从锚标记中激活ASP.NET MVC2客户端验证

时间:2011-06-08 13:58:00

标签: asp.net-mvc-2 asp.net-mvc-2-validation

我正在更改现有的ASP.NET MVC2应用程序,该应用程序使用MicrosoftMvcValidation.js等进行客户端验证。

<h2>Details</h2>
<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcValidation.js" type="text/javascript"></script>

<% Html.EnableClientValidation(); %>

<% using (Html.BeginForm("Details", "Add", FormMethod.Post, new { id="addForm" }))
   { %>
    <%: Html.ValidationSummary(true) %>

    <fieldset>
        <legend>Fields</legend>

        <div class="editor-label">
            <%: Html.LabelFor(model => model.Title) %>
        </div>
        <div class="editor-field">
            <%: Html.TextBoxFor(model => model.Title) %>
            <%: Html.ValidationMessageFor(model => model.Title) %>
        </div>
    ...
    <input type="submit" value="Create" />

客户端验证工作正常,花花公子。

但是,设计人员想要将提交按钮更改为漂亮的锚标记。我正在尝试使用锚点的onclick事件提交表单,即:

<a class="add-campaign-button-done" onclick="document.getElementById('addForm').submit();"><span></span></a>

表单提交,但客户端验证不再有效。

1 个答案:

答案 0 :(得分:0)

有了一点jQuery你可以做到这一点,请看这篇文章:Call MVC 3 Client Side Validation Manually for ajax posts了解更多信息,如果你需要更多帮助,请告诉我!