jQuery Unobtrusive无法在IE7或IE8中运行

时间:2012-05-02 22:31:59

标签: javascript jquery asp.net-mvc-3 jquery-validate

好的,我在JSFiddle中重现了这个问题。以下表单适用于Chrome和IE9,但不适用于IE7或IE8。我发现了一些涉及jQuery特定版本的隆隆声;我们正在使用1.4.4。这是小提琴的链接:

http://jsfiddle.net/xtkuV/77/

表格

<form action="" id="step1Form" method="post">
<label for="FirstName">FirstName</label>
<input class="text-box single-line" data-val="true" data-val-required="The FirstName field is required." id="FirstName" name="FirstName" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="FirstName" data-valmsg-replace="true"></span>
<br/>

<label for="LastName">LastName</label>
<input class="text-box single-line" data-val="true" data-val-length="The field LastName must be a string with a maximum length of 60." data-val-length-max="60" data-val-required="The LastName field is required." id="LastName" name="LastName" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="LastName" data-valmsg-replace="true"></span>
<br />

<label for="Age">Age</label>
<input class="text-box single-line" data-val="true" data-val-number="The field Age must be a number." data-val-range="The field Age must be between 1 and 130." data-val-range-max="130" data-val-range-min="1" data-val-required="The Age field is required." id="Age" name="Age" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="Age" data-valmsg-replace="true"></span>
    <br/>
    <input type="submit" value="Submit"/>
</form>

Javascript

$(function(){    
    $('#step1Form').live('submit',function(e){
        e.preventDefault();
        console.log('sup');
        //do an ajax request here or something!
    });
});

1 个答案:

答案 0 :(得分:2)

“您可能要做的第一件事就是将jquery版本更新到最新版本,现在版本为1.9

执行此操作后,您的客户端验证将停止在Internet Explorer 7和Internet Explorer 8中工作。

这是因为jquery.validate版本与jquery版本&gt;不兼容; 1.6。解决方案很简单,您还需要更新您的jquery.validate版本。您可以从Microsoft的CDN中找到当前版本1.9。 “ *

* 以上信息取自this site: