当使用asp.net的CustomValidator控件的时候,可以在server端验证,也可以在客户端验证
在server端代码如下:
protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
{
int i = 0;
if (int.TryParse(this.TextBox1.Text, out i))
{ args.IsValid = i % 2 == 0; }
else
{ args.IsValid = false; }
}
注:验证一个textbox1接收的值是不是偶数
在客户端 在属性ClientValidationFunction 中填上javascript函数名 比如:checkdata
javascript 代码:
function checkdata(source, args) {
var a = $("#<% =TextBox1.ClientID %>"); //在源文件中 ID:Textbox是#ctl00_ContentPlaceHolder1_TextBox1 ,用了母版页
if (!a.val()) {
alert(a.val());
alert("不能为空" );
args.IsValid = false;
}
var i =parseInt(a.val());
if (isNaN(i)) {
alert("不是是一个数字"+i);
args.IsValid = false;
}
else {
args.IsValid = i % 2 == 0;
}
}
值得注意的是,当控件在母版页中,或者容器中时,$("#id")就找不到控件的id了,两种方法
1,var a = $("#<% =TextBox1.ClientID %>");
2.在源文件中查到 ctl00_ContentPlaceHolder1_TextBox1