jQuery适用于第二个事件,但没有第一个事件

时间:2014-01-10 12:31:22

标签: javascript jquery

我无法找出我的代码无法正常工作的原因

我有这个功能:

function checkIt(input_name, input_value){
   if (input_name === 'firstname') {
       y = regs[0];
   } else if (input_name === 'lastname') {
       y = regs[1];
   } else if (input_name === 'phone') {
       y = regs[2];
   } else if (input_name === 'mail') {
       y = regs[3];
   } else {
       y = regs[4];
   }
   z = input_value.match(y1);

   if (z !== null) {
       rez = true;
   } else {
       rez = false;
   }

   return rez;
}

然后我这样做:

$(document).on("blur", "input[name=firstname]", function(){
    p = $(this).prop("name");
    q = $(this).val();
    r = checkIt(p, q);
    if (r) {
         // something
    } else {
         // something
    }
});

我的问题是我的代码在第一次模糊时不起作用。它开始执行第二次模糊并完成所有事情......:/

1 个答案:

答案 0 :(得分:0)

尝试使用没有参数名称的on(“blur”,“input”,function),因为你有这个输入的prop的var p。

 $(document).on("blur", "input", function(){
        p = $(this).prop("name");
        q = $(this).val();
        r = checkIt(p, q);
        if (r) {
             // something
        } else {
             // something
        }
    });