【问题标题】:Check asp.net mvc ValidationMessage检查 asp.net mvc ValidationMessage
【发布时间】:2014-06-03 06:47:25
【问题描述】:

我正在尝试使用 ValidationMessage 检查模型中的特定字段是否存在

String.IsNullOrEmpty(Html.ValidationMessageFor(m => m.amount).ToString())

但不知何故它不起作用。 检查验证是否失败以及该字段是否存在验证消息的最佳/准确方法是什么。

我要做的是为输入字段显示正常的帮助消息,但是当验证失败时,帮助消息将被验证消息替换。

【问题讨论】:

  • 为什么不直接在视图中编写 Html.ValidationMessageFor() 的逻辑并让它正常运行?
  • @Maritim 你能提供一个你的建议的小例子(带代码)
  • 要使用这样的辅助方法,您必须在您的视图中编写@Html.ValidationMessageFor(m => m.amount),最好在您呈现表单字段本身之前或之后的行上。框架通常会负责其余的工作:)

标签: c# asp.net asp.net-mvc razor


【解决方案1】:

下面的代码 sn-p (MVC4) 总是对我有用。

// in controller action. I think you might have missed this line 
ModelState.AddModelError("amount","Amount is invalid!");

// in view page
if (HtmlHelper.ValidationMessage("amount") != null && !string.IsNullOrEmpty(HtmlHelper.ValidationMessage("amount").ToHtmlString()))
{
//field has error
}

【讨论】:

  • HtmlHelper 是在哪里定义的??
  • 应该是 Html.ValidationMessage
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-12-18
  • 1970-01-01
  • 1970-01-01
  • 2011-02-04
  • 1970-01-01
  • 1970-01-01
  • 2017-06-09
相关资源
最近更新 更多