我正在使用mvc asp.net mvc4 app。 我使用正则表达式验证一个实体。
当我输入错误数据时(当正则表达式阻止操作时),没有错误消息,但是突出显示了验证字段。
否则,如果我输入有效数据(正则表达式不阻止操作),则保存数据,因此工作正常。
问题:为什么没有错误消息?
在我的实体中:
[RegularExpression("(^1000[0-9]{6}$)", ErrorMessage = "Please enter a valid Account Number")]
在cshtml中:
@using (Html.BeginForm()) {
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
...
在我的最终html结果文件中:
<script src="/Scripts/jquery-1.8.2.min.js"></script>
<script src="/Scripts/jquery.validate.min.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.min.js"></script>
...
<input class="text-box single-line" data-val="true" data-val-number="The field Account Number must be a number." data-val-regex="Please enter a valid Account Number" data-val-regex-pattern="(^1000[0-9]{6}$)" data-val-required="The Account Number field is required." id="AccountId" name="AccountId" type="number" value="" />
感谢帮助我,我不明白为什么它不起作用: - / 我是否必须在html中添加“警告”div?似乎没有,但......
答案 0 :(得分:0)
我忘记将@Html.ValidationSummary()
放在.cshtml
文件中。
还有一种方法可以使用@Html.ValidationMessageFor(model => model.Contact)
来表示错误,例如fiels'联系'。
抱歉忘记了,感谢您的关注,我希望这能帮到某人