【发布时间】:2018-04-08 16:03:03
【问题描述】:
我有这段代码,没有(doc on)它可以工作,告诉 div 在重新加载后重新加载按钮不起作用。随着(doc on)事件触发但丢弃变量任何想法?
$(document).on(".status").click(function (event) {
event.preventDefault();
var ids = $(this).attr("data-id-status");
var status = $(this).attr("data-status");
var record = this;
$(record).attr('class', 'btn btn-danger big-bnt prams');
$(record).prop('disabled', true);
$(record).html('Precessing');
$.ajax({
url: 'ajax.php',
type: 'post',
data: {action: 'status', id: ids, status: status},
success: function (data, status) {
alert(data);
if (data == '0') {
$('#flag-view').fadeOut(800, function () {
$("#r" + ids).remove();
$('#flag-view').fadeIn().delay(2000);
});
}
else if (data == '2') {
}
else if (data == '3') {
}
},
error: function (xhr, desc, err) {
console.log(xhr);
console.log("Details: " + desc + "\nError:" + err);
}
}); // end ajax call
})
【问题讨论】:
-
你的意思是“他事件触发但丢弃变量”你能解释一下吗?
-
点击运行的 jquery 事件能够添加警报并显示在屏幕上
-
事件委托,只是说。当您使用 Ajax 替换内容时,您将丢失直接在这些元素上设置的任何绑定。发布的答案是将事件绑定到文档上,并将
click委托给您的元素(基本上,没有解释冒泡)。因此,当文档中发生单击时,它会搜索您的元素。而不是直接绑定。
标签: javascript php jquery document