我有一个功能:
$(".delete").click(function() {
$.ajax({
url: "ServerHandler.ashx",
data: "mode=delete&item=" + $(this).attr("title"),
success: function() {
$(this).parent().parent().remove();
alert("hi");
}
});
});
删除父对象时出现问题。它不会消失。我试图隐藏 - 没有帮助。 警报称为正常。 怎么解决?
抱歉英语不好。
答案 0 :(得分:5)
默认情况下,您在另一个具有其他this
值的函数内部。使用this
函数传递外部函数的$.ajax
值,如下所示:
$.ajax({
context: this,
...
答案 1 :(得分:1)
因为ajax成功回调函数中的this
与单击回调函数不同。您可以将其缓存到本地变量或使用$.ajax()
的{{1}}选项。
context
答案 2 :(得分:0)
您是否尝试在ajax函数中设置context: this,
参数。
当成功处理程序触发时,this
的值将与之前的值不同。
答案 3 :(得分:0)
试试这个:
$(".delete").click(function() {
$object = $(this);
$.ajax({
url: "ServerHandler.ashx",
data: "mode=delete&item=" + $(this).attr("title"),
success: function() {
$object.parent().parent().remove();
alert("hi");
}
});
});