1

focusout我在 IE 中的功能有一个小问题。

我有两个具有相同类的字段,我在 jQuery 中为该类编写了一个空的验证代码focusout

当我专注于一个空的字段时,它会显示警报并专注于同一字段。

在做那个专注的时候,它让我一次又一次地保持警惕,b'coz 是同一个班级。

该怎么办?

JS:

$(".emptyValidate").focusout(function() {    
var currFocusOut = $(this).attr("inText");
    if($(this).val() == ""){            
      alert(currFocusOut+" should not be Empty");
      document.getElementById(currFocusOut).focus();
    }
});

标记:

<input type="text" inText="Name" id="Name" class="emptyValidate "/>
<input type="text" inText="Phone" id="Phone" class="emptyValidate "/>
4

3 回答 3

1

工作演示

$(".emptyValidate").focusout(function () {
    var currFocusOut = $(this).attr("id");
    if ($(this).val() == "") {
        alert(currFocusOut + " should not be Empty");
        $('#'+currFocusOut).focus();
    }
});
于 2013-08-03T05:28:08.187 回答
0

尝试使用blur functionlike,

$(".emptyValidate").blur(function() {    
    var currFocusOut = $(this).attr("inText");
    if($(this).val() == ""){            
      alert(currFocusOut+" should not be Empty");
      document.getElementById(currFocusOut).focus();
    }
});

读取模糊()

或者,自定义属性inText可能不起作用,因此您可以data使用jquerylike

<input type="text" data-inText="Name" id="Name" class="emptyValidate "/>
<input type="text" data-inText="Phone" id="Phone" class="emptyValidate "/>

$(".emptyValidate").focusout(function() {  // use blur if not works  
    var currFocusOut = $(this).data("inText");
    if($(this).val() == ""){            
      alert(currFocusOut+" should not be Empty");
      document.getElementById(currFocusOut).focus();
    }
});

读取数据()

于 2013-08-03T05:23:05.070 回答
0

试试这样的内联函数:

<input type="text" inText="Name" id="Name" class="emptyValidate"  onfocusout="myFunction(this)"/>
<input type="text" inText="Phone" id="Phone" class="emptyValidate"  onfocusout="myFunction(this)"/>
function myFunction(el){
    var currFocusOut = $(el).attr("inText");
    if($(el).val() == ""){            
      alert(currFocusOut+" should not be Empty");
      document.getElementById(currFocusOut).focus();
    }
}
于 2017-03-09T23:44:28.277 回答