Jquery Validity.valid IE 8 错误
Jquery Validity.valid error in IE 8
Validity.valid 为 null 或不是对象 - 使用 Internet Explorer 8
时遇到此问题
这是我的部分代码:
allNextBtn.click(function(){
var curStep = $(this).closest(".setup-content_cli"),
curStepBtn = curStep.attr("id"),
nextStepWizard = $('div.setup-panel_cli div a[href="#' + curStepBtn + '"]').parent().next().children("a"),
curInputs = curStep.find("input[type='text'],input[type='email'],input[type='url'],textarea, email,select,select[readonly]"),
isValid = true;
$(".form-group").removeClass("has-error");
for(var i=0; i<curInputs.length; i++){
if (!curInputs[i].validity.valid){
isValid = false;
$(curInputs[i]).closest(".form-group").addClass("has-error");
$("#"+$(curInputs[i]).attr('id')+"ErrorCLI").show("fast");
//$(curInputs[0]).closest(".form-group").focus();
}
else{
$("#"+$(curInputs[i]).attr('id')+"ErrorCLI").hide("fast");
}
}
if (isValid)
nextStepWizard.removeAttr('disabled').trigger('click');
});
我想我找到了自己的答案,以防万一其他人遇到这个问题我会 post 我自己的解决方案:
改变
如果 (!curInputs[i].validity.valid)
到
如果 (curInputs[i].hasAttribute('required') && curInputs[i].value === '' )
这是正确的,因为我只是在检查必填字段。
Validity.valid 为 null 或不是对象 - 使用 Internet Explorer 8
这是我的部分代码:
allNextBtn.click(function(){
var curStep = $(this).closest(".setup-content_cli"),
curStepBtn = curStep.attr("id"),
nextStepWizard = $('div.setup-panel_cli div a[href="#' + curStepBtn + '"]').parent().next().children("a"),
curInputs = curStep.find("input[type='text'],input[type='email'],input[type='url'],textarea, email,select,select[readonly]"),
isValid = true;
$(".form-group").removeClass("has-error");
for(var i=0; i<curInputs.length; i++){
if (!curInputs[i].validity.valid){
isValid = false;
$(curInputs[i]).closest(".form-group").addClass("has-error");
$("#"+$(curInputs[i]).attr('id')+"ErrorCLI").show("fast");
//$(curInputs[0]).closest(".form-group").focus();
}
else{
$("#"+$(curInputs[i]).attr('id')+"ErrorCLI").hide("fast");
}
}
if (isValid)
nextStepWizard.removeAttr('disabled').trigger('click');
});
我想我找到了自己的答案,以防万一其他人遇到这个问题我会 post 我自己的解决方案:
改变 如果 (!curInputs[i].validity.valid) 到 如果 (curInputs[i].hasAttribute('required') && curInputs[i].value === '' )
这是正确的,因为我只是在检查必填字段。