我还没有找到一个很好的答案。我希望这个文本框只接受数字,并且仍然具有id“searchString2”,这样我就可以在控制器中使用它。知道怎么做吗?

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

提前谢谢。

最佳答案

你可以这样做:

@Html.TextBox('SearchString2', new { @type = "number" })

这应该将类型设置为一个数字,然后可以使用模型上的属性来帮助将其限制为只有int,如:
[RegularExpression(@"^[A-Z]+[a-zA-Z''-'\s]*$")]
[Required]
public string SearchString2 { get; set; }

您需要用实际的正则表达式替换正则表达式,并在其中输入验证消息。
以下是有关验证的详细信息:http://www.asp.net/mvc/overview/getting-started/introduction/adding-validation

07-27 13:58