我有一个这样的模型
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 不会显示给我。