ajax实现删除后自动消失,javascript – 在ajax成功后删除最近的li

我有一个div列出所有上传的文件

$i = 0;

echo '

';

echo "

  • ";

foreach($editorderdata['uploadedfiles'] as $row){

echo '

';

echo '';

echo 'file_'.++$i.'';

echo '';

echo 'cross.png';

echo '

';

}

echo "

";

echo "

";

这是在按下.removefile类元素时删除所选文件的代码

$(document).ready(function() {

$(".removefile").click(function(e) {

e.preventDefault();

var fileidvar = $(this).data('fileid');

if (confirm("Are you sure you want to remove selected file?")) {

$.ajax({

type: "POST",

url:'<?php echo base_url() ?>signup/removefile',

data:{ fileid: fileidvar },

dataType: 'json',

success: function (data) {

if(data.value){

alert(data.value);

$(this).closest("li").remove();

}

},

error:function(){

alert("Something went wrong, please try again.");

}

});

}

return false;

});

});

代码工作正常但我想要的是删除ajax成功的父li不工作..帮助?

解决方法:

你遇到的问题是你的成功处理程序中的$(this)不等于被点击的元素.试试这个:

$(".removefile").click(function(e) {

e.preventDefault();

var $btn = $(this); //

var fileidvar = $btn.data('fileid');

if (confirm("Are you sure you want to remove selected file?")) {

$.ajax({

type: "POST",

url:'<?php echo base_url() ?>signup/removefile',

data: { fileid: fileidvar },

dataType: 'json',

success: function (data) {

if (data.value) {

alert(data.value);

$btn.closest("li").remove(); //

}

},

error: function() {

alert("Something went wrong, please try again.");

}

});

}

return false;

});

标签:javascript,jquery,ajax

来源: https://codeday.me/bug/20190723/1508475.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值