如何使Html文本框仅在Razor MVC中取整数?

Dan*_*boy 3 html c# asp.net-mvc razor asp.net-mvc-4

还没能找到一个很好的答案我的情况.我希望这个文本框只有数字,仍然有ID"SearchString2"所以我可以在我的控制器中使用它.知道怎么样?

if (Roles.IsUserInRole(WebSecurity.CurrentUserName, "Admin"))
{
    @:<p><b>Customer ID:</b> @Html.TextBox("SearchString2")</p>
}
Run Code Online (Sandbox Code Playgroud)

提前致谢.

小智 5

你可以这样做:

@Html.TextBox('SearchString2', new { @type = "number" }) 
Run Code Online (Sandbox Code Playgroud)

这应该将类型设置为数字,然后您可以使用模型上的属性来帮助将其限制为仅这样的内注:

[RegularExpression(@"^[A-Z]+[a-zA-Z''-'\s]*$")]
[Required]
public string SearchString2 { get; set; }
Run Code Online (Sandbox Code Playgroud)

您需要使用实际的正则表达式替换正则表达式并将验证消息放入其中.

以下是有关验证的更多信息:http://www.asp.net/mvc/overview/getting-started/introduction/adding-validation