加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 使用mvc 4 razor引擎显示3个文本框的一条错误消

发布时间:2020-12-16 06:49:20 所属栏目:asp.Net 来源:网络整理
导读:我目前正在验证一个传真号码,我需要在其中只显示所有3个文本框的一条错误消息.像摘要一样 它似乎有点挑剔/愚蠢的业务需求,因为有3个文本框,所有都是自己需要,但如果有人在此之前做到这一点会很好. 在我的模型中: [Required(ErrorMessage = "Fax is Required
我目前正在验证一个传真号码,我需要在其中只显示所有3个文本框的一条错误消息.像摘要一样

它似乎有点挑剔/愚蠢的业务需求,因为有3个文本框,所有都是自己需要,但如果有人在此之前做到这一点会很好.

在我的模型中:

[Required(ErrorMessage = "Fax is Required...")]
    [RegularExpression("^[0-9]{3}$",ErrorMessage = "Not a valid fax #")]
    public string poc_fax_1 { get; set; }
    [Required(ErrorMessage = "Fax is Required...")]
    [RegularExpression("^[0-9]{3}$",ErrorMessage = "Not a valid fax #")]
    public string poc_fax_2 { get; set; }
    [Required(ErrorMessage = "Fax is Required...")]
    [RegularExpression("^[0-9]{4}$",ErrorMessage = "Not a valid fax #")]
    public string poc_fax_3 { get; set; }

视图:

(@Html.TextBoxFor(model => model.poc_fax_1,new { @class = "input-mini",@maxlength=3 })) -
                            @Html.ValidationMessageFor(m=>m.poc_fax_1)
                            @Html.TextBoxFor(model => model.poc_fax_2,@maxlength=3 }) -
                            @Html.ValidationMessageFor(m=>m.poc_fax_2)
                            @Html.TextBoxFor(model => model.poc_fax_3,@maxlength=4 })
                            @Html.ValidationMessageFor(m=>m.poc_fax_3)

注意:图像是在我修复数字条目之前,因此更新了问题.

解决方法

如果3个字段一起有效,您可以检查控制器操作,而不是对每个传真号码使用注释

这样的事情:检查你的控制器

if (faxfield1 != null && faxfield2 != null && faxfield3 != null)
{
    ModelState.AddModelError("FaxError","Fax is not valid");
}

然后在你的视图中使用它(一次)

@Html.ValidationMessage("FaxError")

注意:这只是展示你如何以其他方式做到这一点,你将不得不使用其他验证c

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读