我有一个带有模糊功能的textarea:
$("#comment").blur(function() {
...something
});
当我点击下面的提交按钮时,我不希望发生此blur()
。我该如何解决这个问题?
答案 0 :(得分:0)
正常提交是 PAGE REFRESH
因此:当您的网页再次加载时,blur()
代码也会被调用
答案 1 :(得分:0)
在您的提交中,将一个变量传回服务器,其形式表明它是一个表单提交(即一个有意义的标志)。当您重新呈现页面时,使用标记呈现它,在javascript中声明它是表单提交。在模糊处理程序中查找该标志,清除它并返回false。
答案 2 :(得分:0)
这样的事情应该有效:
var _commentBlurTimer = 0;
$("#comment").blur(function() {
_commentBlurTimer = window.setTimeout(function() {
//...something
}, 500);
});
$("input[type=submit]").click(function() {
if (_commentBlurTimer)
window.clearTimeout(_commentBlurTimer);
});
答案 3 :(得分:0)
您是否尝试过查看When onblur occurs, how can I find out which element focus went *to*? - 在这种情况下应该会有所帮助,这样您就可以根据焦点去哪里来确定是否触发“模糊”功能