未发布数据时,页面加载时显示 MVC Razor 验证错误 [英] MVC Razor Validation Errors showing on page load when no data has been posted

查看:23
本文介绍了未发布数据时,页面加载时显示 MVC Razor 验证错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在处理数据注释.当我单击链接转到某个页面时,正在显示验证消息,但我希望除非已发布数据,否则不显示验证消息.

I'm messing around with data annotations. When I click on a link to go to a page, the validation messages are being displayed, but I would like to have the validation messages not show unless data has been posted.

查看:

@Html.TextBoxFor(m => m.EmailAddress, new { @placeholder = "Enter Email", @class = "form-control" })
@Html.ValidationSummary(true, "Registration Failed. Check your credentials")
@Html.ValidationMessageFor(m => m.EmailAddress, "You must enter a valid Email Address.")

型号:

[Required(ErrorMessage = "Email is required")]
[DataType(DataType.EmailAddress)]
[EmailAddress]
[Display(Name = "Email Address: ")]
public string EmailAddress { get; set; }

控制器:

[HttpGet]
        public ActionResult AddUser()
        {
            return View();
        }

        [HttpPost]
        public ActionResult AddUser(UserCreateViewModel user)
        {
            if (ModelState.IsValid)
            {
                var success = UserRepository.AddUser(user);

                if (success)
                {
                    return View("Success");
                }
            }

            return View("AddUser");
        }

就像我说的,我的问题发生在 AddUser 视图的页面加载上.当我单击链接查看 AddUser 页面时,加载后会显示验证消息,但此时尚未发布任何数据且模型为空.

Like I said, my problem occurs on page load of the AddUser view. When I click on the link to view the AddUser page, validation messages are showing after it loads, yet at this point no data has been posted and the model is empty.

推荐答案

将验证样式设置为:

.validation-summary-valid { display:none; }

所以默认情况下它是隐藏的.错误将触发它显示.

So by default it's hidden. An error will trigger it to display.

这篇关于未发布数据时,页面加载时显示 MVC Razor 验证错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆