Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 基于MVC的无干扰验证方法_Jquery_Asp.net Mvc_Unobtrusive Validation - Fatal编程技术网

Jquery 基于MVC的无干扰验证方法

Jquery 基于MVC的无干扰验证方法,jquery,asp.net-mvc,unobtrusive-validation,Jquery,Asp.net Mvc,Unobtrusive Validation,我试图在MVC视图上运行一个方法,但不引人注目的验证返回了一个错误。我当前的脚本根本没有启动。我试图只在返回错误时运行某个方法 我尝试了$(“#submitButton”)。单击和类似的方法,但没有效果 是否仅从内联脚本执行此操作?验证是否有任何触发器 <fieldset class="step"> <legend> Contact: </legend>

我试图在MVC视图上运行一个方法,但不引人注目的验证返回了一个错误。我当前的脚本根本没有启动。我试图只在返回错误时运行某个方法

我尝试了
$(“#submitButton”)。单击
和类似的方法,但没有效果

是否仅从内联脚本执行此操作?验证是否有任何触发器

<fieldset class="step">
                <legend>
                    Contact:
                </legend>
                <p>Let us know how we can contact you with your quote, or anything else we may need from you coming up to your ski trip. </p>
                <div style=" float: left;">
                    <table>
                        <tr style="height: 50px; padding: 5px;">
                            <td style="width: 187px;">
                                Full Name*
                            </td>
                            <td>
                                @Html.DropDownListFor(x => x.Title, Model.Titles, "...........", new { style = "width:70px; padding: 5px;" })

                                @Html.TextBoxFor(x => x.FirstName, new { style = "width:115px; padding: 5px;" })

                                @Html.TextBoxFor(x => x.LastName, new { style = "width:115px; padding: 5px;" })

                            </td>
                        </tr>
                        <tr style="height: 50px; padding: 5px;">
                            <td style="width: 187px;">
                                City*
                            </td>
                            <td>
                                @Html.TextBoxFor(x => x.City, new { style = "width:320px; padding: 5px;" })

                            </td>
                        </tr>
                        <tr style="height: 50px; padding: 5px;">
                            <td style="width: 187px;">
                                Postcode*
                            </td>
                            <td>
                                @Html.TextBoxFor(x => x.Postcode, new { style = "width:320px; padding: 5px;" })

                            </td>
                        </tr>
                        <tr style="height: 50px; padding: 5px;">
                            <td style="width: 187px;">
                                Email*
                            </td>
                            <td>
                                @Html.TextBoxFor(x => x.Email, new { style = "width:320px; padding: 5px;" })

                            </td>
                        </tr>
                        <tr style="height: 50px; padding: 5px;">
                            <td style="width: 187px;">
                                Telephone*
                            </td>
                            <td>
                                @Html.TextBoxFor(x => x.Telephone, new { style = "width:320px; padding: 5px;" })

                            </td>
                        </tr>

                        <tr style="height: 50px; padding: 5px;">
                            <td style="width: 187px;">
                                Preferred Time of Contact
                            </td>
                            <td>
                                @Html.TextBoxFor(x => x.PreferredTime, new { style = "width:200px; padding: 5px;" })

                            </td>
                        </tr>
                    </table>
                </div>

                <input id="submitButton" type="image" alt="Submit" src="/images/global/submit_button.gif" />
            </fieldset>

返回错误是什么意思?您看到了什么以及发生了什么?如果验证失败,那么我希望能够运行一个方法您可以像这样从jquery调用检查:var controls=$(“#divid”).find(“.class”);$。每个(控件、函数(索引、项){$(“#form1”).validate().element($(this));if($(this.valid){//skip it maybe}其他{//做点什么,如果需要甚至是ajax调用}单击“提交”按钮已经触发了验证。我需要添加额外的功能,以便在验证失败时使某些内容成为焦点。我不能使用onclick,因为由于验证,页面将不允许我提交表单,因此我不能运行onclick,这是使用普通验证的方式,而不是不引人注目的方式。默认情况下,MVC触发验证正在检查必需的属性,这是一种不引人注目的方法。这是我发现的捕获任何单个错误并对此进行处理的方法,例如,关注该字段$(this).focus(),或显示消息或其他任何内容。
 $(function () {
    $("form").bind("invalid-form.validate", function () {
        alert('invalid!');
    });
});
 var controls = $("#divid").find('.class'); 
 $.each(controls, function (index, item) { 
       $("#form1").validate().element($(this)); 
       if ($(this).valid) { 
         //skip it maybe 
       } else { 
            //do something, even an ajax call if need be 
       }