0

ビューを 1 つ作成しました。その中で、「作成」と「キャンセル」用に2つのマルチサブミットボタンを配置しました。

これで、キャンセルをクリックすると、クライアント側の検証が呼び出されます。しかし、クライアント側の検証を呼び出したくありません。

以下にコードを書きましたので、ご確認ください。キャンセルボタンのクリック時に検証を実行したくありません。

@model Blog.Models.User
@{
    ViewBag.Title = "Register New User";
}

@using Microsoft.Web.Mvc;
@using MVC3MultiSubmitButtonExtension;
<h2>
    Register New User</h2>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
@using (Html.BeginForm())
{
    @Html.ValidationSummary(true)
    <fieldset>
        <legend>Fill User Details</legend>
        <div class="editor-label">
            @Html.LabelFor(model => model.FirstName)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.FirstName)
            @Html.ValidationMessageFor(model => model.FirstName)
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.LastName)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.LastName)
            @Html.ValidationMessageFor(model => model.LastName)
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.Username)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.Username)
            @Html.ValidationMessageFor(model => model.Username)
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.Password)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.Password)
            @Html.ValidationMessageFor(model => model.Password)
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.EmailAddress)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.EmailAddress)
            @Html.ValidationMessageFor(model => model.EmailAddress)
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.MobileNumber)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.MobileNumber)
            @Html.ValidationMessageFor(model => model.MobileNumber)
        </div>
        <p>
            @*  <input type="submit" value="Create" />*@
           @Html.MultiSubmitButton(Url.Action("Create"), "btnCreate", "Create")
           @Html.MultiSubmitButton(Url.Action("Cancel"), "btnCancel", "Cancel")
        </p>
    </fieldset>
}
<div>
    @Html.ActionLink("Click here to go Login Page", "Index")
</div>
4

1 に答える 1

0

キャンセル送信ボタンに割り当てた場合class="cancel"、クライアント側の検証は実行されません。このクラスを割り当てる方法はHtml.MultiSubmitButton、ASP.NET MVC の一部ではないカスタム ヘルパーを使用しているように見えるため、私にはわかりません。したがって、そのドキュメントを確認する必要があります。

于 2012-06-22T06:58:13.037 に答える