ie8 submit-> onclick return true不起作用

时间:2011-02-25 11:25:23

标签: jquery internet-explorer-8 jquery-validate

我在ie8上遇到了问题。

我正在使用jquery验证:

$(document).ready(function(){
    $("#form_utente").validate({

       rules: {
........

然后,像往常一样,我也会这样检查:

function isValid(){
    var valid = $("#form_utente").valid();
    return valid;
}
<input value="<?=_('Invia');?>" type="submit" onclick="return isValid();" />

这适用于所有浏览器(包括ie7)bot在ie8上不起作用,有人知道为什么吗?

非常感谢您的帮助

编辑:

完整的JS代码

function isValid(){
    var valid = $("#form_utente").valid();
    return valid;
}
$(document).ready(function(){
    $("#form_utente").validate({

       rules: {
            'data[email]': {required:true, remote:base_url+"store/ajax_check", email:true},
            'data[password]': {required:true, minlength:6},
            'data[password2]': {required:true, equalTo:"#password"},
            'data[nome]': {required:true},
            'data[cognome]': {required:true},
            'data[indirizzo]': {required:true},
            'data[comune]': {required:true},
            'data[provincia]': {required:true},
            'data[cap]': {required:true,digits:true,maxlength:5},
            'data[nazione]': {required:true},
            'data[telefono]': {required:true,digits:true}
       },
       messages: {
            'data[email]': {email:"Inserire una email valida.", remote:"Email gi&agrave; registrata"},
            'data[password]': {minlength:"La password deve essere pi&ugrave; lunga di 6 caratteri."},
            'data[password2]': {equalTo:"Le password non coincidono"},
            'data[nome]': {},
            'data[cognome]': {},
            'data[indirizzo]': {},
            'data[comune]': {},
            'data[provincia]': {},
            'data[cap]': {digits:"Pregasi inserire un cap valido", maxlength:"Pregasi inserire un cap valido"},
            'data[nazione]': {},        
            'data[telefono]': {digits:"Pregasi inserire un numero di telefono valido",maxlength:"Pregasi inserire un numero di telefono valido"}
        },
        success: function(label) { 
            label.html(" ").addClass("checked"); 
        } 

    });
});

2 个答案:

答案 0 :(得分:1)

@ 0plus1:我认为您正在使用F12(不是在真正的IE8浏览器中)检查IE8模拟器中的代码。在jquery.validator.js中存在一些问题,因为它使所有输入字段在IE8模拟器中作为必填字段存在于表单中。但真正的IE8工作正常。

答案 1 :(得分:0)

请阅读manual of valid

  需要调用

validate()   在使用此检查之前形成   方法

link可能有助于你