我在我的网络应用程序中使用MVC 3。在我的应用程序中,我有一个用户输入表单。在这种形式中,我有两个文本框字段,即出生日期和计划年龄。对于那些字段,我需要进行验证。出生日期将是正常的日期验证,我自己做了。问题是计划年龄,它应该是从出生日期和100计算的年龄之间。当用户单击选项卡或离开计划年龄文本框时,我需要抛出错误消息。我需要在客户端进行验证。有没有想过实现它?
答案 0 :(得分:0)
模型
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>
}
答案 1 :(得分:0)
您应该学会使用jquery验证插件:https://jqueryvalidation.org/。
以下是一个工作示例,说明了您的案例:https://jsfiddle.net/AurelianCtin/b84j1xyn/3/
<form id="form1" name="form1">
Plan age:
<input id="field2" type="text" class="planAgeValid"/>
</form>
<div>
<input id="btn" type="button" value="Validate" />
</div>
$(function() {
$.validator.addMethod("planAgeValid",function(value) {
return value > getcalculatedage() && value < 100;
}, "Please enter a valid planned age!");
});
$('#btn').click(function() {
$("#form1").valid();
});
function getcalculatedage() {
return 18;
}
您可以验证整个表单:
$("form").valid();
或者如果您愿意,您只能验证一个输入:
$("#field2").valid();