mvc3验证当然首选模型验证了。
[DataType(System.ComponentModel.DataAnnotations.DataType.EmailAddress)]
public string UserEmail { get; set; }
只要你声明 DataType(System.ComponentModel.DataAnnotations.DataType.EmailAddress)就会自动帮你验证字段是不是正确的邮箱
采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!)
function GetQueryString(name)
{ var reg = new RegExp("(^|)"+ name +"=([^]*)(|$)"); var r = window.location.search.substr(1).match(reg); if(r!=null)return unescape(r[2]); return null;
}
// 调用方法alert(GetQueryString("参数名1"));
alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));
一、Required
必填选项,当提交的表单缺少该值就引发验证错误。
二、StringLength
指定允许的长度
指定最大长度:
[StringLength(20)]//最大长度不超过20个字符
指定最短于最长限制:
[StringLength(20,MinimumLength=3)]//最大长度不超过20个字符,最短不能低于3个字符
三、RegularExpression
正则表达式能够匹配的字符串,如果不能匹配,则报一个验证错误
[RegularExpression(@"[A-Za-z0-9.%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}")]
如邮箱格式验证:
[RegularExpression(@"^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$", ErrorMessage = "请输入正确的电子邮箱地址!")]
四、Range
Range特性用来指定数值类型值的最小值和最大值。
[Range(35,44)] //整型,最小35,最大44
[Range(typeof(decimal),"0.00","49.99")] //decimal类型
五、Remote
允许利用服务器端的回调函数执行客户端的验证逻辑。说白了就是支持AJAX验证。
需要引用命名空间:System.Web.Mvc;
这个写个异步验证用户名是否存在的DEMO:
[Required]
[Remote("CheckUserName", "Home")]
public string UserName
{
get;
set;
}
new RegExp("(^|)"+ name +"=([^]*)(|$)"); var r = window.location.search.substr(1).match(reg); if(r!=null)return