1

我有一个这样的模型

using Microsoft.Practices.EnterpriseLibrary.Validation;
using Microsoft.Practices.EnterpriseLibrary.Validation.Validators;

namespace MvcValidationTest.Models
{ 
    public class Person
    {

        [NotNullValidator(MessageTemplate = "FullName Is required!!!")]
        public string FullName { get; set; }
}

当我像这样从 Html.BeginForm() 使用时

 @using (Html.BeginForm()) {

<fieldset>
    <legend>Person</legend>

    <div class="editor-label">
        @Html.LabelFor(model => model.FullName )
    </div>
    <div class="editor-field">
        @Html.EditorFor(model => model.FullName )
        @Html.ValidationMessageFor(model => model.FullName )
    </div>
        <p>
        <input type="submit" value="Create" />
    </p>
</fieldset>
}

当我提交表单并且 FullName 为空时... ValidationMessage 显示给我。但是当我像这样使用 Ajax.BeginForm()

 @using (Ajax.BeginForm("Create", "Home", new AjaxOptions { HttpMethod = "post" }))
  <fieldset>
    <legend>Person</legend>

    <div class="editor-label">
        @Html.LabelFor(model => model.FullName )
    </div>
    <div class="editor-field">
        @Html.EditorFor(model => model.FullName )
        @Html.ValidationMessageFor(model => model.FullName )
    </div>
        <p>
        <input type="submit" value="Create" />
    </p>
</fieldset>
}

当我提交表单并且 FullName 为空时... ValidationMessage 不会显示给我。

4

0 回答 0