-2

http://thewayofcode.wordpress.com/2012/01/18/custom-unobtrusive-jquery-validation-with-data-annotations-in-mvc-3/

我试图使上述链接中的示例工作,但无法正确。我不确定我做错了什么?

我复制了模型验证

 [DataType(DataType.Date)]
    [DisplayName("Start Date of Construction")]
    [DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
    public DateTime? StartDate { get; set; }

[DataType(DataType.Date)]
[DisplayNameAttribute("End Date of Construction")]
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
[DateGreaterThan("StartDate", "Estimated end date of construction must be greater than the start date of the construction")]
public DateTime? EndDateOf { get; set; }

其次是 DateGreaterThan 代码。

在视图中

  @Html.EditorFor(model => model.StartDate)
  @Html.EditorFor(model => model.EndDate)
   @Html.ValidationMessageFor(model => model.StartDate)
   @Html.ValidationMessageFor(model => model.EndDate)

但是,如果有人能提供一些启发,按钮点击不会触发任何事情。这将非常有帮助,甚至任何其他不同的方式都会受到赞赏。同样地,在下拉菜单中选择一个值时,尝试从模型中获取验证工作在文本框中输入的值。

4

1 回答 1

1
  1. 而不是[DisplayName("Start Date of Construction")]应该使用[Display(Name="Start Date of Construction")]
  2. 而不是[DisplayNameAttribute("End Date of Construction")]应该使用[Display(Name="End Date of Construction")]

看看你是否至少得到这个运行。你的数据注释属性搞砸了,去网上找样例就行了。

于 2012-08-08T21:54:18.003 回答