视图

时间:2016-01-13 14:28:04

标签: asp.net asp.net-mvc

我将代码更改为以下内容,但我仍未在View上收到任何验证错误。

*

<td>
                            <div class="col-xs-7">
                                @Html.TextBoxFor(model => model.PersonalEmail, new { @class = "form-control" })
                                @Html.ValidationMessageFor(model => model.PersonalEmail, "", new { @class = "text-danger" })

                            </div>
                        </td>

*

我正在为我的模型添加电子邮件验证并在View上进行测试。

这是我的观点

<tr>
                        <td style="width: 50%;"></td>
                        <td>
                            <div class="col-xs-7">
                                @Html.TextBoxFor(model => model.PersonalEmail, new { @class = "form-control" })
                            </div>
                        </td>
                    </tr>

在我的模型中,我有

 [RegularExpression("^[a-zA-Z0-9_\\.-]+@([a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,6}$", ErrorMessage = "E-mail is not valid")]
        public string PersonalEmail{ get; set; }

我也试过这个

[Display(Name = "Email address")]
        [DataType(DataType.EmailAddress)]
        public string PersonalEmail{ get; set; }

呈现视图时,我输入“Test”或“test.com”但未显示验证错误。任何帮助表示赞赏。感谢。

3 个答案:

答案 0 :(得分:2)

你忘了验证消息

@Html.ValidationMessageFor(m => m.PersonalEmail, "", new { @class = "text-danger" })

答案 1 :(得分:1)

您错过了ValidationMessageFor

<div class="col-xs-7">         
    @Html.TextBoxFor(m => m.Email, new { @id = "textEmail", @class = "form-control", @placeholder = "email@example.com" })
    @Html.ValidationMessageFor(m => m.Email)
</div>

答案 2 :(得分:1)

尝试使用@ Html.EditorFor和模型注释[EmailAddress(ErrorMessage =&#34;无效的电子邮件地址&#34;)]