您的位置:首页 > Web前端 > JavaScript

net中正则表达式的客户端验证--javascript

2006-12-30 22:08 513 查看
net中客户端验证可以用微软自带的验证控件,但明显没有直接写的Javascript来得简单有效,请参照以下三步:
第一:Form如下:


<form id="Form1" method="post" runat="server">


<FONT face="宋体"></FONT><FONT face="宋体"></FONT>


<br>


1. Name :<br>


<asp:TextBox ID="txtName" runat="server" /><br>


2. Email :<br>


<asp:TextBox ID="txtEmail" runat="server" /><br>


3. Web URL :<br>


<asp:TextBox ID="txtWebURL" runat="server" /><br>


4. Zip :<br>


<asp:TextBox ID="txtZIP" runat="server" /><br>


5.Content<br>


<asp:TextBox ID="txtContent" runat="server" TextMode="MultiLine" Width="504px" Height="80px" />


<br>


<asp:Button ID="btnSubmit" OnClientClick=" return validate()" runat="server" Text="Submit" />


</form>

第二:调用函数如下(可自行扩展)


<script language="javascript" type="text/javascript">


function validate()




...{


if (document.getElementById("<%=txtName.ClientID%>").value=="")




...{


alert("Name Feild can not be blank");


document.getElementById("<%=txtName.ClientID%>").focus();


return false;


}


if(document.getElementById("<%=txtEmail.ClientID %>").value=="")




...{


alert("Email id can not be blank");


document.getElementById("<%=txtEmail.ClientID %>").focus();


return false;


}


// var emailPat = /^(".*"|[A-Za-z]w*)@([d{1,3}(.d{1,3}){3}]|[A-Za-z]w*(.[A-Za-z]w*)+)$/;


//var emailPat = "w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*";


//var emailPat = /^[/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+$/;


//var emailPat = '^([w]+@([w]+.)+[a-zA-Z]{2,9}(s*;s*[w]+@([w]+.)+[a-zA-Z]{2,9})*)$';


var emailPat = "^[a-zA-Z0-9_.]+@[a-zA-Z0-9-]+[.a-zA-Z]+$";


var emailid=document.getElementById("<%=txtEmail.ClientID %>").value;


var matchArray = emailid.match(emailPat);


if (matchArray == null)




...{


alert("Your email address seems incorrect. Please try again.");


document.getElementById("<%=txtEmail.ClientID %>").focus();


return false;


}


if(document.getElementById("<%=txtWebURL.ClientID %>").value=="")




...{


alert("Web URL can not be blank");


document.getElementById("<%=txtWebURL.ClientID %>").value="http://"


document.getElementById("<%=txtWebURL.ClientID %>").focus();


return false;


}


var Url="^[A-Za-z]+://[A-Za-z0-9-_]+/.[A-Za-z0-9-_%&?/.=]+$"


var tempURL=document.getElementById("<%=txtWebURL.ClientID%>").value;


var matchURL=tempURL.match(Url);


if(matchURL==null)




...{


alert("Web URL does not look valid");


document.getElementById("<%=txtWebURL.ClientID %>").focus();


return false;


}


if (document.getElementById("<%=txtZIP.ClientID%>").value=="")




...{


alert("Zip Code is not valid");


document.getElementById("<%=txtZIP.ClientID%>").focus();


return false;


}


var digits="0123456789";


var temp;


for (var i=0;i<document.getElementById("<%=txtZIP.ClientID %>").value.length;i++)




...{


temp=document.getElementById("<%=txtZIP.ClientID%>").value.substring(i,i+1);


if (digits.indexOf(temp)==-1)




...{


alert("Please enter correct zip code");


document.getElementById("<%=txtZIP.ClientID%>").focus();


return false;


}


}


var ContentLength="";


if (document.getElementById("<%=txtContent.ClientID%>").value=="")




...{


alert("Content is need!");


document.getElementById("<%=txtContent.ClientID%>").focus();


return false;


}


else if(document.getElementById("<%=txtContent.ClientID%>").value.length>100)




...{


alert("Content is Too Long,and More than 100 Chars!");


document.getElementById("<%=txtContent.ClientID%>").focus();


return false;


}


return true;


}


</script>

第三:Page_Load事件中加入一行:


private void Page_Load(object sender, System.EventArgs e)




...{


btnSubmit.Attributes.Add("onclick", "return validate()");


}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: