DataAnnotations验证正则表达式MVC4

时间:2014-03-11 21:24:30

标签: regex asp.net-mvc asp.net-mvc-4 data-annotations

模型中的正则表达式

 [RegularExpression("!^search for name or lastname", ErrorMessage = "Invalid search")]
 public string SearchText { get; set; }

我有一个默认值为“search for name or lastname”的文本框,onfocus我删除了该值。

但是如果用户单击搜索按钮而不输入文本框中的文本,我希望正则表达式捕获它,如何修复正则表达式,如果文本框值是“搜索名称或姓氏”然后显示错误信息。完全匹配。

由于

1 个答案:

答案 0 :(得分:2)

您没有正确使用该属性。该属性采用正则表达式并将输入与该正则表达式进行比较。如果它无效,则显示ErrorMessage。

 [RegularExpression(@"^[a-zA-Z]+$", ErrorMessage = "Invalid search")]
 public string SearchText { get; set; }

所以这样的事情只有在你的html页面上的SearchText输入只有字母时才有效。显然,您应该调整正则表达式以满足您的要求。

如果您想要“默认值”,则可能需要使用占位符HTML属性。 http://www.w3schools.com/tags/att_input_placeholder.asp