3

我有一个输入 type='text',并且使用 jQuery,每次这个文本框被模糊时,我都会将 css('background', 'red') 应用于文本框。问题是,当我尝试通过 puttin 调试代码alert('test')并在对话框上单击“确定”时,会不断弹出带有“test”的相同对话框。

这仅仅是因为单击“确定”被认为是文本框模糊还是更严重?提前致谢。

$('#input').blur(function(){
       $(this).css('background','red');
       alert('test');
}
4

5 回答 5

3

您应该使用控制台而不是警报进行调试:

$('#input').blur(function(){
       $(this).css('background','red');
       console.log('test');
});

我相信在大多数浏览器中按 F12 会调出控制台。

于 2012-04-18T16:38:01.270 回答
2

这不是一个无限循环。警报关闭只是调度事件。

尝试console.log("test")改用并观察您的浏览器控制台。

谢谢。

于 2012-04-18T16:38:07.083 回答
2

改为这样做

$('#input').blur(function(){
       $(this).css('background','red');
       console.log('test');
});
于 2012-04-18T16:38:31.637 回答
2

您的代码工作正常

如果您一次又一次地获得模糊事件,听起来就像您将元素重新聚焦在模糊上。

于 2012-04-18T16:38:52.217 回答
1

代码错误:);缺失

$('#input').blur(function(){
       $(this).css('background','red');
       alert('test');
});

您的代码运行良好。

于 2012-04-18T16:38:56.177 回答