jQuery blur()出现在焦点上

时间:2017-07-01 10:26:43

标签: javascript blur

我想在blur()上验证表单的每个输入,以便用户离开输入框。

$("form#relative_form :input").blur(function() {
   var input = $(this).attr('id');
   alert("Validate: " + input);
});

它工作正常,但当我在第一个输入字段并点击TAB进入下一个输入字段时, 我的脚本直接验证第二个输入。 但我只想验证我是否留下了输入。

JSFiddle

2 个答案:

答案 0 :(得分:0)

警报导致对象失去焦点,触发模糊。使用Console.log()代替测试:

$("form#relative_form :input").blur(function() {
    var input = $(this).attr('id'); // This is the jquery object of the input, do what you will
    console.log("Validate: " + input);
});

答案 1 :(得分:0)

您的代码似乎工作正常!!!

  

但是,您必须使用console.log()来代替警报。如果您是   使用警报然后它会连续调用模糊功能因为你   试图关闭警报框,那时它会调用模糊   event。它就像循环函数。

而不是:

$("form#relative_form :input").blur(function() {
   var input = $(this).attr('id');
   alert("Validate: " + input);
});

应该是:

$("form#relative_form :input").blur(function() {
   var input = $(this).attr('id');
   console.log("Validate: " + input);
});