我在这里看了,但找不到任何适用于我想做的事情。这是我的AJAX调用,它是delete_item的点击事件:
$.ajax({
type: 'POST',
url: '<?php echo site_url('channel_partners/cms/delete'); ?>',
data: 'article_id=' + article_id,
dataType: 'json',
cache: false,
success: function(data) {
$('li').remove($(this).id);
},
error: function(xhr, status, error) {
alert('Error occurred: ' + status);
}
});
这是删除调用的行,它不起作用。 $(this).id正确引用我想删除的li的id。我认为我的问题是我使用删除调用。我认为我的语法有问题,但我不知道是什么。我遵循了API,但它们没有这个具体。有人可以帮忙吗?感谢。
哦,我的DOM看起来像这样:
<li id="26"><a class="delete_item" ...></a><li>
答案 0 :(得分:1)
非常简单:
$(this).remove();
您可能希望缓存对当前“this”的引用,尤其是在您异步运行脚本的情况下:
var pEl = $(this);
$.ajax({...snip...
success:function(data){
pEl.remove();
}
答案 1 :(得分:0)
我假设链接控制每当这个ajax调用运行时,所以$(this)对象指的是&lt; a&gt;不是&lt; li>元件。而且你不能在成功事件中直接使用它。所以你可以这样做:
然后您可以使用这样删除li元素:
$("li[id=" + data + "]").remove();
通过这样使用,您可能会从服务器获取不成功的删除结果,并从服务器返回“ERROR”之类的数据。
答案 2 :(得分:-1)
$("li").attr("id",$(this).id).remove()