我对 MVC3 非常陌生,并且正在使用 MVC3 razor 应用程序。我需要以这样的方式验证 View 上的文本框,文本框将只接受那些以字符“PR”开头的字符串,并且该字符串的第 4 个字符必须为“2”。如果有人帮助我,那就太好了。提前致谢
问问题
728 次
2 回答
0
那么你需要正则表达式。我不确定正则表达式是什么以及您的字符串包含什么。但是,如果您需要在那里有 2 个匹配项,您可以将其拆分并使用 2 个文本框并加入帖子中的值。
视图模型:
public class MyViewModel
{
[RegularExpression("^PR[A-Za-z0-9]", ErrorMessage= "Invalid Text1")]
public string MyText1 { get; set; }
[RegularExpression("^2[A-Za-z0-9]", ErrorMessage= "Invalid Text2")]
public string MyText2 { get; set; }
}
警告,这个正则表达式可能有问题。我邀请其他人编辑/发表评论,我可以用正确的正则表达式更新它
看法:
@model MyProject.Models.MyViewModel
@using (Html.BeginForm())
{
@Html.TextBoxFor(m => m.MyText1)
@Html.TextBoxFor(m => m.MyText2)
<button type="submit">Submit</button>
}
希望这可以帮助
于 2013-07-24T07:11:49.390 回答
-1
模型
public class RegisterModel
{
public int ID { get; set; }
[RegularExpression(@"^PR[a-zA-Z0-9]2([a-zA-Z0-9]*)$", ErrorMessage = "Please enter valid Name.")]
[Required(ErrorMessage = "Name is required.")]
public string Name { get; set; }
}
看法
@using (Html.BeginForm("DYmanicControllerPage", "Test", FormMethod.Post, new { id = "FrmIndex" }))
{
<div>
@Html.LabelFor(m => m.Name)
@Html.TextBoxFor(m => m.Name)
@Html.ValidationMessageFor(m => m.Name)
</div>
}
于 2013-07-24T08:00:34.963 回答