Wes*_*sey 28 razor asp.net-mvc-3
我有包含注册表单的结果页面.我正在尝试在电子邮件模型上使用客户端验证,但我不能,因为模型类型与我发布的类型不同.
class Results
{
... // some results data to display
}
class EmailSignup
{
public virtual int Id { get; set; }
[Required(ErrorMessage = "Please enter your email.")]
[DataType(DataType.EmailAddress)]
[RegularExpression(@"^(([A-Za-z0-9]+_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\.+)|([A-Za-z0-9]+\++))*[A-Za-z0-9]+@((\w+\-+)|(\w+\.))*\w{1,63}\.[a-zA-Z]{2,6}$", ErrorMessage = "Please enter a valid email address.")]
public virtual string Email { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
@model MyApp.Results
[display results]
...
@using (Html.BeginForm("SubmitEmail", "AnalysisResults", FormMethod.Post))
{
<fieldset>
@Html.TextBoxFor( model => model.???? )
</fieldset>
}
Run Code Online (Sandbox Code Playgroud)
我希望用户提交的类型是EmailSignup,而不是结果.
SLa*_*aks 31
将表单移动到采用EmailSignup模型的局部视图.
这可以很容易地完成.你必须这样做:
var contactModel = new ContactModel();
@Html.TextBoxFor(m => contactModel.Title)
@Html.ValidationMessageFor(m => contactModel.Title)
Run Code Online (Sandbox Code Playgroud)
验证就像一个魅力.
| 归档时间: |
|
| 查看次数: |
8500 次 |
| 最近记录: |