Javascript 单击事件在页面加载时运行
我在一个外部文件中有这个jQuery脚本。我用它来更新数据库。我一直在练习它,但不能把它做好。我希望在单击我的按钮(标有ID“add”)时运行.ajax调用,但是每次刷新页面时都会更新数据库,而不是单击按钮时!有人能解释一下原因吗?提前谢谢Javascript 单击事件在页面加载时运行,javascript,jquery,Javascript,Jquery,我在一个外部文件中有这个jQuery脚本。我用它来更新数据库。我一直在练习它,但不能把它做好。我希望在单击我的按钮(标有ID“add”)时运行.ajax调用,但是每次刷新页面时都会更新数据库,而不是单击按钮时!有人能解释一下原因吗?提前谢谢 $('#add').click( $.ajax({ url: 'test.php', success: function() { alert("added"); } })
$('#add').click(
$.ajax({
url: 'test.php',
success: function() {
alert("added");
}
})
);
更新:
多亏了@flo,我才能够完美地完成这项工作。以下是最终产品:
$(document).on('click','#add',function() {
$.ajax({
url: 'test.php',
success: function() {
alert("added");
}
})
});
我不是100%确定,但我想你是在用一些东西触发点击,而不是绑定这个事件 我的意思是:
$('#add').click($.ajax...)
不应与以下内容相同:
$('#add').click(function (clickEvent) {
// Update here !
$.ajax...
});
但无论如何,您应该更喜欢:
$('#add').on('click', function (clickEvent) {
// Update here !
$.ajax...
});
或者更好:
$(document).on('click', '#add', function (clickEvent) {
// Update here !
$.ajax...
});
我懂了。我想我没有充分阅读文档。这很有效。谢谢无论如何,我不认识任何一个熟记文档的人;)请注意,
$('#add')。click(fn)==$('#add')。on('click',fn)
(假设jQuery 1.7+没有排除带有grunt的速记表单),这是相同的行为,但我认为它需要berger使用.on(),以使代码更易于理解。