【发布时间】:2012-07-01 14:49:49
【问题描述】:
我有 javascript 代码,应该在焦点转移时执行一次。一切正常,但由于某种奇怪的原因,这段代码被执行了两次,因此我给出了两个警报窗口。
$(document).ready(function() {
$('#username').blur(function() {
var formData = {
"username":$('#username').val()
};
$.ajax({
url:'check.php',
type:'POST',
data:'jsonData=' + $.toJSON(formData),
success: function(res) {
alert(res);
}
});
});
});
我做错了什么?
【问题讨论】:
-
您是否拥有多个具有
id="username"属性的元素? -
好的,如果将
alert替换为console.log会发生什么?事件还会触发两次吗? -
Salman A,是的,它出现了两次。
-
Here is a jsfiddle with almost your exact code 并且警报只发生一次。您的代码是否有可能运行两次?如果您为“模糊”放置 两个 事件处理程序,您将获得 ajax 调用...
-
嗯,我在 Firebug 中看到 两个 对 check.php 的请求。如果我只发布一次,为什么会发生这种情况?
标签: javascript jquery ajax