Проверка JQuery не работает в IE (работает в FF) - PullRequest
0 голосов
/ 08 июня 2011

У меня есть простая форма, которая нуждается в проверке. У меня это работает в FF, но ведет себя странно в IE. Я использую jQuery 1.6 и jQuery Validate 1.8.

Ниже приведен полный HTML-код. Как вы можете видеть, я пытался изменить атрибут charset, так как я читал, что некоторые люди успешно делали это для IE. Все еще не повезло. Странно то, что когда вы запускаете это в IE, submitHandler отключается (появляется предупреждение о том, что форма была «отправлена»). Это как если бы функция проверки никогда не отключалась вообще, даже если вся форма оставлена ​​пустой. Может кто-нибудь попробовать это или предложить решение?

<html>

<head>

<script src="jquery.min.js" type="text/javascript" charset="ISO-8859-1"></script>
<script src="jquery.validate.min.js" type="text/javascript" charset="ISO-8859-1"></script>

<script>
$(document).ready(function() {

    var prospectTxErrors = {
        prospectName : {
            required : "An entry is required in field Prospect.",
            rangelength : "Prospect Name must be between 2 and 45 characters."
            },
        groupSize : {
            required : "An entry is required in field Group Size.",
            digits : "Numeric data is required in field Group Size."
        },
        zipCode : {
            required : "An entry is required in field Zip Code.",
            digits : "Numeric data is required in field Zip Code.",
            rangelength : "Zip Code must be 5 digits."
        }, 
        sicCode : {
            required : "This is an invalid SIC code. Enter the SIC again or search for the SIC code.",
            rangelength : "This is an invalid SIC code. Enter the SIC again or search for the SIC code.",
            digits : "This is an invalid SIC code. Enter the SIC again or search for the SIC code."
        }, 
        agencyProducer : {
            required : "An entry is required in the Agent field."
        },
        phone : {
            required : "A 10 digit entry is required for Phone field."
        }   
    };

    $.validator.setDefaults({ 
        submitHandler : function() { alert("submitted!"); }
    });

    $("#prospectForm").validate({
        errorLabelContainer : $("#errorDiv ul"),
        wrapper : "li",
        debug : true,
        rules : {
            prospectName : {
                required : true,
                rangelength : [2, 45]
            },
            groupSize : {
                required : true,
                digits : true
            },
            zipCode : {
                required : true,
                digits : true,
                rangelength : [5, 5]    
            },
            sicCode : {
                required : true,
                rangelength : [4, 4],
                digits : true
            },
            agencyProducer : {
                required : true 
            },
            phone : {
                required : true,
                digits : true
            }
        },
        messages : prospectTxErrors
    });
});
</script>

<title>Test Prospect</title>
</head>

<body>

<div id="errorDiv"><ul id="errorList"></ul></div>

<form class="prospectForm" id="prospectForm" method="get" action="">
<label>Prospect Name</label>
<input type="text"
     name="prospectName" 
     id="prospectName"
     class=""/>
<br></br>
<label>Group Size</label>
<input type="text"
     name="groupSize" 
     id="groupSize"
     class=""/>
<br></br>
<label>Zip Code</label>
<input type="text"
     name="zipCode" 
     id="zipCode"
     maxLength="5"
     class=""/>
<br></br>
<label>SIC Code</label>
<input type="text"
     name="sicCode" 
     id="sicCode"
     maxLength="4"
     class=""/>
<br></br>
<label>Agency/Producer</label>
<input type="text"
     name="agencyProducer" 
     id="agencyProducer"
     class=""/>  
<br></br>
<label>Phone</label>
<input type="text"
     name="phone" 
     id="phone"
     class=""/>  
<input class="submit" type="submit" value="Submit"/>

</form>

</body>
</html>

Ответы [ 2 ]

2 голосов
/ 08 июня 2011

Проверка jQuery не работает в IE7 + IE8

См. Этот предыдущий ответ на вопрос.Та же проблема, может сработать и здесь.

0 голосов
/ 04 сентября 2012

нет необходимости изменять всю версию jquery. Просто обновите версию ur jquery.validate до 1.9 ... Это потому, что версия jquery.validate не совместима с версиями jquery> 1.6.Решения просты, вам нужно обновить свою версию jquery.validate.Вы можете найти текущую версию 1.9 из CDN Microsoft или последнюю версию из GitHub здесь:

Microsoft Ajax CDN: http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.min.js
Проверка GitHub Jquery: https://github.com/jzaefferer/jquery-validation/downloads

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...