jQuery验证不适用于IE10

时间:2014-04-05 05:10:59

标签: jquery validation

这里我在表单上使用验证。它适用于Chrome,Firefox但在IE10中存在问题。有些验证不像电子邮件,电话那样工作。这个问题出现在所有html页面上。

$('#contact').validate({
    onfocusout: function (element) {
        $(element).valid();
    },
    rules:{
        prenume:{
            required:true,
        },
        nume:{
            required:true,
        },
        email:{
            required:true,
            email:true
        },
        password_new:{
            required:true,
        },
        telefon:{
            required:true,
        },
        address:{
            required:true,

        },
        password_repeat:{
            required:true,
        }
    },

    messages:{
        prenume:{
            required:'<div style="color:red; padding-left:0px;" >Acest c&#xE2;mp este obligatoriu.</div>',
        },
        nume:{
            required:'',
        },
        email:{
            required:'<div style="color:red; padding-left:0px;">Acest c&#xE2;mp este obligatoriu.</div>',
            email:'<div style="color:red; padding-left:0px;">Adres&#xE2; de e-mail incorect&#xE2;.</div>',
        },
        password_new:{
            required:'<div style="color:red; padding-left:0px;">Acest c&#xE2;mp este obligatoriu.</div>',
        },
        telefon:{
            required:'<div style="color:red; padding-left:0px;">Acest c&#xE2;mp este obligatoriu.</div>',
        },
        password_repeat:{
            required:'',
        }
    }
});

2 个答案:

答案 0 :(得分:1)

IE是语法严格的浏览器,请关注额外的逗号(,)

password_repeat:{
  required: '',
}

password_repeat:{
  required: ''
}

答案 1 :(得分:0)

@Girish解决方案将解决问题,并且对于IE10中的兼容模式到IE8 =即使ah属性不存在,它也会返回空字符串。所以

 $(event.target).attr("formnovalidate") !== undefined

始终为true并且跳过验证分叉jQuery验证插件并修复它, 这是fix