【问题标题】:How to use ViewData with @Html.EditorFor for populating the text-box on page load in MVC?如何使用 ViewData 和 @Html.EditorFor 在 MVC 中的页面加载时填充文本框?
【发布时间】:2014-09-12 10:24:26
【问题描述】:
@Html.Editor("Email", @ViewData["Email"])

我正在使用编辑器,我可以填充文本框,但不会出现验证错误消息。我想将 EditorFor 用于强绑定代码请告诉我任何解决方案。

【问题讨论】:

  • 这里没有足够的信息来真正了解发生了什么,但是您的 ViewData 上的 @ 看起来有点奇怪,您是否尝试将其删除?

标签: asp.net asp.net-mvc asp.net-mvc-3 asp.net-mvc-4


【解决方案1】:

您是否可以将此字段添加到传递的model。如果没有,那么您将需要为该字段使用custom jquery validator

【讨论】:

  • 这样,如果文本框为空,我将无法收到错误消息。
  • 请使用调试检查 ViewData["Email"] 中是否有任何值
  • 看,我是说如果留空,文本框不会显示错误消息。
  • @Smokingmonkey 为什么你不使用 hutchonoid 建议的模型
  • 您是否可以将此字段添加到传递的模型中。如果没有,那么您需要为此字段使用自定义 jquery 验证器。
【解决方案2】:

如果您没有在视图中使用任何模型,只需为电子邮件创建一个模型。如果不是,您必须使用简单的 jquery 验证。

//使用模型

public class EmailModel
{
        [Required]
        [Display(Name = "Email")]
        public string Email { get; set; }
}


@Html.ValidationMessageFor(m => m.Email)

@Html.EditorFor(m => m.Email)

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-11
    • 1970-01-01
    • 2013-11-25
    • 1970-01-01
    • 2010-11-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多