我最近开始使用jQuery而且我遇到了一点打嗝,当我的ajax函数只运行一次时,这里是代码:
$('input').live('click', function(event){
var conf = confirm("Are you sure you want to delete this user?");
if(conf == true)
{
var list = document.getElementById("Users");
document.getElementById("msg").innerHTML = "Deleting...";
$.ajax({
type: "GET",
url: "Pages/Functionality/delete-user.php",
data: "userid=" + list.options[list.selectedIndex].value + "&id=" + getURLParameter('id'),
success: function(m){
document.getElementById("userList").innerHTML = m
},
error: function (xhr, status, error) {
if (xhr.status > 0) alert('Error Occured!\n\nError: ' + error + '\n' + 'Status: ' + status);
}
});
}
});
当它第二次运行到ajax部分并且停止运行时,我已经尝试了.on
但是第二次它根本没有运行并且我尝试了.delegate
,同样的事情发生在使用.live
时,但它会多次运行。
我再一次寻找解决方案,所以我决定尝试在线获得一些帮助。
干杯,
罗素
编辑:我也尝试将缓存设置为false,但这不起作用。
答案 0 :(得分:1)
尝试在最后从处理程序返回false以防止默认操作:
$(document).on('click', 'input', function(event) {
...
return false;
});