【发布时间】:2014-03-21 14:39:48
【问题描述】:
在 ajax 成功后尝试删除元素时遇到问题..
这是我的 ajax 代码:
verifyRequest.denyUser = function(requestId,element){
$.ajax({
url: loaderURL+'idverified/denyRequest',
dataType:"json",
type:"post",
data:{
id:requestId,
},
success: function(data){
element.remove();
}
});
}
并收听此事件:
$("#requestUsers ul li .remove").click(function(){
var id = $(this).attr("data-value"),
element = $(this).parent('li');
verifyRequest.denyUser(id,element);
});
问题是这样的 - ajax 工作正常但是当涉及到“成功:”部分时 它不会删除元素。
我尝试了这段代码,它可以工作,但这不符合我的需要:
$("#requestUsers ul li .remove").click(function(){
var id = $(this).attr("data-value"),
element = $(this).parent('li');
verifyRequest.denyUser(id,element);
element.remove();//and it did worked
});
有人能解释一下为什么会这样吗?谢谢
【问题讨论】:
-
你确定成功回调被触发了吗?
-
是的,很确定.. 在控制台上返回 200OK
-
你确定你的“成功”处理程序真的被调用了吗?可以在里面添加console.log或者断点来验证吗?
-
你确定那个元素是一个 jQuery 对象吗?如果不是,你应该这样做
$(element).remove(); -
@NEWBIE 原因很多,也许你应该看看你的服务器脚本...
标签: javascript jquery ajax dom