﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-mose2006-随笔分类-zwspace</title><link>http://www.blogjava.net/mose2006/category/21591.html</link><description /><language>zh-cn</language><lastBuildDate>Thu, 07 Jun 2007 04:46:54 GMT</lastBuildDate><pubDate>Thu, 07 Jun 2007 04:46:54 GMT</pubDate><ttl>60</ttl><item><title>javascript</title><link>http://www.blogjava.net/mose2006/archive/2007/06/07/122532.html</link><dc:creator>摩西</dc:creator><author>摩西</author><pubDate>Thu, 07 Jun 2007 02:47:00 GMT</pubDate><guid>http://www.blogjava.net/mose2006/archive/2007/06/07/122532.html</guid><wfw:comment>http://www.blogjava.net/mose2006/comments/122532.html</wfw:comment><comments>http://www.blogjava.net/mose2006/archive/2007/06/07/122532.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/mose2006/comments/commentRss/122532.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/mose2006/services/trackbacks/122532.html</trackback:ping><description><![CDATA[<p>js验证表单大全<br>1. 长度限制<br>&lt;script&gt;<br>function test() <br>{<br>if(document.a.b.value.length&gt;50)<br>{<br>alert("不能超过50个字符！");<br>document.a.b.focus();<br>return false;<br>}<br>}<br>&lt;/script&gt;<br>&lt;form name=a onsubmit="return test()"&gt;<br>&lt;textarea name="b" cols="40" wrap="VIRTUAL" rows="6"&gt;&lt;/textarea&gt;<br>&lt;input type="submit" name="Submit" value="check"&gt;<br>&lt;/form&gt; </p>
<p>2. 只能是汉字 <br>&lt;input onkeyup="value="/oblog/value.replace(/[^\u4E00-\u9FA5]/g,'')"&gt;</p>
<p>3." 只能是英文<br>&lt;script language=javascript&gt;<br>function onlyEng()<br>{<br>if(!(event.keyCode&gt;=65&amp;&amp;event.keyCode&lt;=90))<br>event.returnvalue=false;<br>}<br>&lt;/script&gt;</p>
<p>&lt;input onkeydown="onlyEng();"&gt;</p>
<p>4. 只能是数字<br>&lt;script language=javascript&gt;<br>function onlyNum()<br>{<br>if(!((event.keyCode&gt;=48&amp;&amp;event.keyCode&lt;=57)||(event.keyCode&gt;=96&amp;&amp;event.keyCode&lt;=105)))<br>//考虑小键盘上的数字键<br>event.returnvalue=false;<br>}<br>&lt;/script&gt;</p>
<p>&lt;input onkeydown="onlyNum();"&gt;</p>
<p>5. 只能是英文字符和数字<br>&lt;input onkeyup="value="/oblog/value.replace(/[\W]/g,"'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"&gt;</p>
<p>6. 验证油箱格式<br>&lt;SCRIPT LANGUAGE=javascript RUNAT=Server&gt;<br>function isEmail(strEmail) {<br>if (strEmail.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)<br>return true;<br>else<br>alert("oh");<br>}<br>&lt;/SCRIPT&gt;<br>&lt;input type=text onblur=isEmail(this.value)&gt;</p>
<p>7. 屏蔽关键字(这里屏蔽***和****)<br>&lt;script language="javascript1.2"&gt;<br>function test() {<br>if((a.b.value.indexOf ("***") == 0)||(a.b.value.indexOf ("****") == 0)){<br>alert(":)");<br>a.b.focus();<br>return false;}<br>}<br>&lt;/script&gt;<br>&lt;form name=a onsubmit="return test()"&gt;<br>&lt;input type=text name=b&gt;<br>&lt;input type="submit" name="Submit" value="check"&gt;<br>&lt;/form&gt;</p>
<p>8. 两次输入密码是否相同<br>&lt;FORM METHOD=POST ACTION=""&gt;<br>&lt;input type="password" id="input1"&gt;<br>&lt;input type="password" id="input2"&gt;<br>&lt;input type="button" value="test" onclick="check()"&gt;<br>&lt;/FORM&gt;<br>&lt;script&gt;<br>function check()<br>{ <br>with(document.all){<br>if(input1.value!=input2.value)<br>{<br>alert("false")<br>input1.value = "";<br>input2.value = "";<br>}<br>else document.forms[0].submit();<br>}<br>}<br>&lt;/script&gt;<br>够了吧 :)<br>屏蔽右键 很酷 <br>oncontextmenu="return false" ondragstart="return false" onselectstart="return false"<br>加在body中</p>
<p><br>二</p>
<p>2.1&nbsp; 表单项不能为空</p>
<p>&lt;script&nbsp; language="javascript"&gt;<br>&lt;!--<br>function&nbsp; CheckForm()<br>{&nbsp; <br>if&nbsp; (document.form.name.value.length&nbsp; ==&nbsp; 0)&nbsp; {&nbsp; <br>alert("请输入您姓名!");<br>document.form.name.focus();<br>return&nbsp; false;<br>}<br>return&nbsp; true;<br>}<br>--&gt;<br>&lt;/script&gt;</p>
<p>2.2&nbsp; 比较两个表单项的值是否相同</p>
<p>&lt;script&nbsp; language="javascript"&gt;<br>&lt;!--<br>function&nbsp; CheckForm()<br>if&nbsp; (document.form.PWD.value&nbsp; !=&nbsp; document.form.PWD_Again.value)&nbsp; {&nbsp; <br>alert("您两次输入的密码不一样！请重新输入.");<br>document.ADDUser.PWD.focus();<br>return&nbsp; false;<br>}<br>return&nbsp; true;<br>}<br>--&gt;<br>&lt;/script&gt;</p>
<p>2.3&nbsp; 表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等</p>
<p>&lt;script&nbsp; language="javascript"&gt;<br>&lt;!--<br>function&nbsp; isNumber(String)<br>{&nbsp; <br>var&nbsp; Letters&nbsp; =&nbsp; "1234567890-";&nbsp; //可以自己增加可输入值<br>var&nbsp; i;<br>var&nbsp; c;<br>if(String.charAt(&nbsp; 0&nbsp; )=='-')<br>return&nbsp; false;<br>if(&nbsp; String.charAt(&nbsp; String.length&nbsp; -&nbsp; 1&nbsp; )&nbsp; ==&nbsp; '-'&nbsp; )<br>return&nbsp; false;<br>for(&nbsp; i&nbsp; =&nbsp; 0;&nbsp; i&nbsp; &lt;&nbsp; String.length;&nbsp; i&nbsp; ++&nbsp; )<br>{&nbsp; <br>c&nbsp; =&nbsp; String.charAt(&nbsp; i&nbsp; );<br>if&nbsp; (Letters.indexOf(&nbsp; c&nbsp; )&nbsp; &lt;&nbsp; 0)<br>return&nbsp; false;<br>}<br>return&nbsp; true;<br>}<br>function&nbsp; CheckForm()<br>{&nbsp; <br>if(!&nbsp; isNumber(document.form.TEL.value))&nbsp; {&nbsp; <br>alert("您的电话号码不合法！");<br>document.form.TEL.focus();<br>return&nbsp; false;<br>}<br>return&nbsp; true;<br>}<br>--&gt;<br>&lt;/script&gt;</p>
<p><br>2.4&nbsp; 表单项输入数值/长度限定</p>
<p>&lt;script&nbsp; language="javascript"&gt;<br>&lt;!--<br>function&nbsp; CheckForm()&nbsp; <br>{&nbsp; <br>if&nbsp; (document.form.count.value&nbsp; &gt;&nbsp; 100&nbsp; ||&nbsp; document.form.count.value&nbsp; &lt;&nbsp; 1)<br>{&nbsp; <br>alert("输入数值不能小于零大于100!");<br>document.form.count.focus();<br>return&nbsp; false;<br>}<br>if&nbsp; (document.form.MESSAGE.value.length&lt;10)<br>{&nbsp; <br>alert("输入文字小于10!");<br>document.form.MESSAGE.focus();<br>return&nbsp; false;<br>}<br>return&nbsp; true;<br>}<br>//--&gt;<br>&lt;/script&gt;</p>
<p>2.5&nbsp; 中文/英文/数字/邮件地址合法性判断</p>
<p>&lt;SCRIPT&nbsp; LANGUAGE="javascript"&gt;<br>&lt;!--</p>
<p>function&nbsp; isEnglish(name)&nbsp; //英文值检测<br>{&nbsp; <br>if(name.length&nbsp; ==&nbsp; 0)<br>return&nbsp; false;<br>for(i&nbsp; =&nbsp; 0;&nbsp; i&nbsp; &lt;&nbsp; name.length;&nbsp; i++)&nbsp; {&nbsp; <br>if(name.charCodeAt(i)&nbsp; &gt;&nbsp; 128)<br>return&nbsp; false;<br>}<br>return&nbsp; true;<br>}</p>
<p>function&nbsp; isChinese(name)&nbsp; //中文值检测<br>{&nbsp; <br>if(name.length&nbsp; ==&nbsp; 0)<br>return&nbsp; false;<br>for(i&nbsp; =&nbsp; 0;&nbsp; i&nbsp; &lt;&nbsp; name.length;&nbsp; i++)&nbsp; {&nbsp; <br>if(name.charCodeAt(i)&nbsp; &gt;&nbsp; 128)<br>return&nbsp; true;<br>}<br>return&nbsp; false;<br>}</p>
<p>function&nbsp; isMail(name)&nbsp; //&nbsp; E-mail值检测<br>{&nbsp; <br>if(!&nbsp; isEnglish(name))<br>return&nbsp; false;<br>i&nbsp; =&nbsp; name.indexOf("&nbsp; at&nbsp; ");<br>j&nbsp; =&nbsp; name&nbsp; dot&nbsp; lastIndexOf("&nbsp; at&nbsp; ");<br>if(i&nbsp; ==&nbsp; -1)<br>return&nbsp; false;<br>if(i&nbsp; !=&nbsp; j)<br>return&nbsp; false;<br>if(i&nbsp; ==&nbsp; name&nbsp; dot&nbsp; length)<br>return&nbsp; false;<br>return&nbsp; true;<br>}</p>
<p>function&nbsp; isNumber(name)&nbsp; //数值检测<br>{&nbsp; <br>if(name.length&nbsp; ==&nbsp; 0)<br>return&nbsp; false;<br>for(i&nbsp; =&nbsp; 0;&nbsp; i&nbsp; &lt;&nbsp; name.length;&nbsp; i++)&nbsp; {&nbsp; <br>if(name.charAt(i)&nbsp; &lt;&nbsp; "0"&nbsp; ||&nbsp; name.charAt(i)&nbsp; &gt;&nbsp; "9")<br>return&nbsp; false;<br>}<br>return&nbsp; true;<br>}</p>
<p>function&nbsp; CheckForm()<br>{&nbsp; <br>if(!&nbsp; isMail(form.Email.value))&nbsp; {&nbsp; <br>alert("您的电子邮件不合法！");<br>form.Email.focus();<br>return&nbsp; false;<br>}<br>if(!&nbsp; isEnglish(form.name.value))&nbsp; {&nbsp; <br>alert("英文名不合法！");<br>form.name.focus();<br>return&nbsp; false;<br>}<br>if(!&nbsp; isChinese(form.cnname.value))&nbsp; {&nbsp; <br>alert("中文名不合法！");<br>form.cnname.focus();<br>return&nbsp; false;<br>}<br>if(!&nbsp; isNumber(form.PublicZipCode.value))&nbsp; {&nbsp; <br>alert("邮政编码不合法！");<br>form.PublicZipCode.focus();<br>return&nbsp; false;<br>}<br>return&nbsp; true;<br>}<br>//--&gt;<br>&lt;/SCRIPT&gt;</p>
<p>2.6&nbsp; 限定表单项不能输入的字符</p>
<p>&lt;script&nbsp; language="javascript"&gt;<br>&lt;!--</p>
<p>function&nbsp; contain(str,charset)//&nbsp; 字符串包含测试函数<br>{&nbsp; <br>var&nbsp; i;<br>for(i=0;i&lt;charset.length;i++)<br>if(str.indexOf(charset.charAt(i))&gt;=0)<br>return&nbsp; true;<br>return&nbsp; false;<br>}</p>
<p>function&nbsp; CheckForm()<br>{&nbsp; <br>if&nbsp; ((contain(document.form.NAME.value,&nbsp; "%\(\)&gt;&lt;"))&nbsp; ||&nbsp; (contain(document.form.MESSAGE.value,&nbsp; "%\(\)&gt;&lt;")))<br>{&nbsp; <br>alert("输入了非法字符");<br>document.form.NAME.focus();<br>return&nbsp; false;<br>}<br>return&nbsp; true;<br>}<br>//--&gt;<br>&lt;/script&gt;&nbsp; </p>
<p>1. 检查一段字符串是否全由数字组成&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>---------------------------------------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&lt;script language="Javascript"&gt;&lt;!--&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>function checkNum(str){return str.match(/\D/)==null}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>alert(checkNum("1232142141"))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>alert(checkNum("123214214a1"))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>// --&gt;&lt;/script&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>2. 怎么判断是否是字符&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>---------------------------------------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>if (/[^\x00-\xff]/g.test(s)) alert("含有汉字");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>else alert("全是字符");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>3. 怎么判断是否含有汉字&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>---------------------------------------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>if (escape(str).indexOf("%u")!=-1) alert("含有汉字");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>else alert("全是字符");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>4. 邮箱格式验证&nbsp;&nbsp;&nbsp; <br>---------------------------------------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>//函数名：chkemail&nbsp;&nbsp;&nbsp;&nbsp; <br>//功能介绍：检查是否为Email Address&nbsp;&nbsp;&nbsp;&nbsp; <br>//参数说明：要检查的字符串&nbsp;&nbsp;&nbsp;&nbsp; <br>//返回值：0：不是 1：是&nbsp;&nbsp;&nbsp;&nbsp; <br>function chkemail(a)&nbsp;&nbsp;&nbsp;&nbsp; <br>{ var i=a.length;&nbsp;&nbsp;&nbsp;&nbsp; <br>var temp = a.indexOf(<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#39;&#64;&#39;">'@'</a>);&nbsp;&nbsp;&nbsp;&nbsp; <br>var tempd = a.indexOf('.');&nbsp;&nbsp;&nbsp;&nbsp; <br>if (temp &gt; 1) {&nbsp;&nbsp;&nbsp;&nbsp; <br>if ((i-temp) &gt; 3){&nbsp;&nbsp;&nbsp;&nbsp; <br>if ((i-tempd)&gt;0){&nbsp;&nbsp;&nbsp;&nbsp; <br>return 1;&nbsp;&nbsp;&nbsp;&nbsp; <br>}&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>}&nbsp;&nbsp;&nbsp;&nbsp; <br>}&nbsp;&nbsp;&nbsp;&nbsp; <br>return 0;&nbsp;&nbsp;&nbsp;&nbsp; <br>}&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>5. 数字格式验证&nbsp;&nbsp;&nbsp; <br>---------------------------------------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>//函数名：fucCheckNUM&nbsp;&nbsp;&nbsp;&nbsp; <br>//功能介绍：检查是否为数字&nbsp;&nbsp;&nbsp;&nbsp; <br>//参数说明：要检查的数字&nbsp;&nbsp;&nbsp;&nbsp; <br>//返回值：1为是数字，0为不是数字&nbsp;&nbsp;&nbsp;&nbsp; <br>function fucCheckNUM(NUM)&nbsp;&nbsp;&nbsp;&nbsp; <br>{&nbsp;&nbsp;&nbsp;&nbsp; <br>var i,j,strTemp;&nbsp;&nbsp;&nbsp;&nbsp; <br>strTemp="0123456789";&nbsp;&nbsp;&nbsp;&nbsp; <br>if ( NUM.length== 0)&nbsp;&nbsp;&nbsp;&nbsp; <br>return 0&nbsp;&nbsp;&nbsp;&nbsp; <br>for (i=0;i&lt;NUM.length;i++)&nbsp;&nbsp;&nbsp;&nbsp; <br>{&nbsp;&nbsp;&nbsp;&nbsp; <br>j=strTemp.indexOf(NUM.charAt(i));&nbsp;&nbsp;&nbsp;&nbsp; <br>if (j==-1)&nbsp;&nbsp;&nbsp;&nbsp; <br>{&nbsp;&nbsp;&nbsp;&nbsp; <br>//说明有字符不是数字&nbsp;&nbsp;&nbsp;&nbsp; <br>return 0;&nbsp;&nbsp;&nbsp;&nbsp; <br>}&nbsp;&nbsp;&nbsp;&nbsp; <br>}&nbsp;&nbsp;&nbsp;&nbsp; <br>//说明是数字&nbsp;&nbsp;&nbsp;&nbsp; <br>return 1;&nbsp;&nbsp;&nbsp;&nbsp; <br>}&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>6. 电话号码格式验证&nbsp;&nbsp;&nbsp; <br>---------------------------------------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>//函数名：fucCheckTEL&nbsp;&nbsp;&nbsp;&nbsp; <br>//功能介绍：检查是否为电话号码&nbsp;&nbsp;&nbsp;&nbsp; <br>//参数说明：要检查的字符串&nbsp;&nbsp;&nbsp;&nbsp; <br>//返回值：1为是合法，0为不合法&nbsp;&nbsp;&nbsp;&nbsp; <br>function fucCheckTEL(TEL)&nbsp;&nbsp;&nbsp;&nbsp; <br>{&nbsp;&nbsp;&nbsp;&nbsp; <br>var i,j,strTemp;&nbsp;&nbsp;&nbsp;&nbsp; <br>strTemp="0123456789-()# ";&nbsp;&nbsp;&nbsp;&nbsp; <br>for (i=0;i&lt;TEL.length;i++)&nbsp;&nbsp;&nbsp;&nbsp; <br>{&nbsp;&nbsp;&nbsp;&nbsp; <br>j=strTemp.indexOf(TEL.charAt(i));&nbsp;&nbsp;&nbsp;&nbsp; <br>if (j==-1)&nbsp;&nbsp;&nbsp;&nbsp; <br>{&nbsp;&nbsp;&nbsp;&nbsp; <br>//说明有字符不合法&nbsp;&nbsp;&nbsp;&nbsp; <br>return 0;&nbsp;&nbsp;&nbsp;&nbsp; <br>}&nbsp;&nbsp;&nbsp;&nbsp; <br>}&nbsp;&nbsp;&nbsp;&nbsp; <br>//说明合法&nbsp;&nbsp;&nbsp;&nbsp; <br>return 1;&nbsp;&nbsp;&nbsp;&nbsp; <br>}&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp; <br>7. 判断输入是否为中文的函数&nbsp;&nbsp; <br>---------------------------------------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>function ischinese(s){&nbsp;&nbsp; <br>var ret=true;&nbsp;&nbsp; <br>for(var i=0;i&lt;s.length;i++)&nbsp;&nbsp; <br>ret=ret &amp;&amp; (s.charCodeAt(i)&gt;=10000);&nbsp;&nbsp; <br>return ret;&nbsp;&nbsp; <br>}&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp; <br>8. 综合的判断用户输入的合法性的函数&nbsp; <br>---------------------------------------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&lt;script language="javascript"&gt;&nbsp; <br>//限制输入字符的位数开始&nbsp; <br>//m是用户输入，n是要限制的位数&nbsp; <br>function issmall(m,n)&nbsp; <br>{&nbsp; <br>if ((m&lt;n) &amp;&amp; (m&gt;0))&nbsp; <br>&nbsp; {&nbsp; <br>&nbsp; return(false);&nbsp; <br>&nbsp; }&nbsp; <br>else&nbsp; <br>{return(true);}&nbsp; <br>}&nbsp; <br>&nbsp; <br>9. 判断密码是否输入一致&nbsp; <br>---------------------------------------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>function issame(str1,str2)&nbsp; <br>{&nbsp; <br>if (str1==str2)&nbsp; <br>{return(true);}&nbsp; <br>else&nbsp; <br>{return(false);}&nbsp; <br>}&nbsp; <br>&nbsp; <br>10. 判断用户名是否为数字字母下滑线 <br>---------------------------------------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>function notchinese(str){ <br>var reg=/[^A-Za-z0-9_]/g <br>&nbsp;&nbsp;&nbsp; if (reg.test(str)){ <br>&nbsp;&nbsp;&nbsp; return (false); <br>&nbsp;&nbsp;&nbsp; }else{ <br>return(true);&nbsp;&nbsp;&nbsp; } <br>} </p>
<p>11. form文本域的通用校验函数<br>---------------------------------------&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>作用：检测所有必须非空的input文本，比如姓名，账号，邮件地址等等。<br>该校验现在只针对文本域，如果要针对form里面的其他域对象，可以改变判断条件。</p>
<p>使用方法：在要检测的文本域中加入title文字。文字是在提示信息，你要提示给用户的该字段的中文名。比如要检测用户名<br>html如下&lt;input name="txt_1" title="姓名"&gt;,当然，最好用可视化工具比如dreamweaver什么的来编辑域。<br>如果要检测数字类型数据的话，再把域的id统一为sz.<br>javascript判断日期类型比较麻烦，所以就没有做日期类型校验的程序了.高手可以补充。</p>
<p>程序比较草，只是提供一个思路。抛砖引玉！ ：）<br>哦，对了，函数调用方法：&lt; form&nbsp; onsubmit="return dovalidate()"&gt;</p>
<p>function dovalidate()<br>{<br>fm=document.forms[0] //只检测一个form,如果是多个可以改变判断条件<br>&nbsp;&nbsp;&nbsp; for(i=0;i&lt;fm.length;i++)<br>&nbsp;&nbsp;&nbsp; {&nbsp; <br>&nbsp;&nbsp;&nbsp; //检测判断条件，根据类型不同可以修改<br>&nbsp;&nbsp;&nbsp; if(fm[i].tagName.toUpperCase()=="INPUT" &amp;&amp;fm[i].type.toUpperCase()=="TEXT" &amp;&amp; (fm[i].title!=""))<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(fm[i].value="/blog/="")//<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str_warn1=fm[i].title+"不能为空!";<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert(str_warn1);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fm[i].focus();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return false;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(fm[i].id.toUpperCase()=="SZ")//数字校验<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(isNaN(fm[i].value))<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { str_warn2=fm[i].title+"格式不对";<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert(str_warn2);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fm[i].focus();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return false;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; return true;<br>}</p>
<p><br>2 &gt;表单提交验证类 </p>
<p><br>2.1 表单项不能为空</p>
<p>&lt;script language="javascript"&gt;<br>&lt;!--<br>function CheckForm()<br>{ <br>if (document.form.name.value.length == 0) { <br>alert("请输入您姓名!");<br>document.form.name.focus();<br>return false;<br>}<br>return true;<br>}<br>--&gt;<br>&lt;/script&gt;</p>
<p>2.2 比较两个表单项的值是否相同</p>
<p>&lt;script language="javascript"&gt;<br>&lt;!--<br>function CheckForm()<br>if (document.form.PWD.value != document.form.PWD_Again.value) { <br>alert("您两次输入的密码不一样！请重新输入.");<br>document.ADDUser.PWD.focus();<br>return false;<br>}<br>return true;<br>}<br>--&gt;<br>&lt;/script&gt;</p>
<p>2.3 表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等</p>
<p>&lt;script language="javascript"&gt;<br>&lt;!--<br>function isNumber(String)<br>{ <br>var Letters = "1234567890-"; //可以自己增加可输入值<br>var i;<br>var c;<br>if(String.charAt( 0 )=='-')<br>return false;<br>if( String.charAt( String.length - 1 ) == '-' )<br>return false;<br>for( i = 0; i &lt; String.length; i ++ )<br>{ <br>c = String.charAt( i );<br>if (Letters.indexOf( c ) &lt; 0)<br>return false;<br>}<br>return true;<br>}<br>function CheckForm()<br>{ <br>if(! isNumber(document.form.TEL.value)) { <br>alert("您的电话号码不合法！");<br>document.form.TEL.focus();<br>return false;<br>}<br>return true;<br>}<br>--&gt;<br>&lt;/script&gt;</p>
<p><br>2.4 表单项输入数值/长度限定</p>
<p>&lt;script language="javascript"&gt;<br>&lt;!--<br>function CheckForm() <br>{ <br>if (document.form.count.value &gt; 100 || document.form.count.value &lt; 1)<br>{ <br>alert("输入数值不能小于零大于100!");<br>document.form.count.focus();<br>return false;<br>}<br>if (document.form.MESSAGE.value.length&lt;10)<br>{ <br>alert("输入文字小于10!");<br>document.form.MESSAGE.focus();<br>return false;<br>}<br>return true;<br>}<br>//--&gt;<br>&lt;/script&gt;</p>
<p>2.5 中文/英文/数字/邮件地址合法性判断</p>
<p>&lt;SCRIPT LANGUAGE="javascript"&gt;<br>&lt;!--</p>
<p>function isEnglish(name) //英文值检测<br>{ <br>if(name.length == 0)<br>return false;<br>for(i = 0; i &lt; name.length; i++) { <br>if(name.charCodeAt(i) &gt; 128)<br>return false;<br>}<br>return true;<br>}</p>
<p>function isChinese(name) //中文值检测<br>{ <br>if(name.length == 0)<br>return false;<br>for(i = 0; i &lt; name.length; i++) { <br>if(name.charCodeAt(i) &gt; 128)<br>return true;<br>}<br>return false;<br>}</p>
<p>function isMail(name) // E-mail值检测<br>{ <br>if(! isEnglish(name))<br>return false;<br>i = name.indexOf(" at ");<br>j = name dot lastIndexOf(" at ");<br>if(i == -1)<br>return false;<br>if(i != j)<br>return false;<br>if(i == name dot length)<br>return false;<br>return true;<br>}</p>
<p>function isNumber(name) //数值检测<br>{ <br>if(name.length == 0)<br>return false;<br>for(i = 0; i &lt; name.length; i++) { <br>if(name.charAt(i) &lt; "0" || name.charAt(i) &gt; "9")<br>return false;<br>}<br>return true;<br>}</p>
<p>function CheckForm()<br>{ <br>if(! isMail(form.Email.value)) { <br>alert("您的电子邮件不合法！");<br>form.Email.focus();<br>return false;<br>}<br>if(! isEnglish(form.name.value)) { <br>alert("英文名不合法！");<br>form.name.focus();<br>return false;<br>}<br>if(! isChinese(form.cnname.value)) { <br>alert("中文名不合法！");<br>form.cnname.focus();<br>return false;<br>}<br>if(! isNumber(form.PublicZipCode.value)) { <br>alert("邮政编码不合法！");<br>form.PublicZipCode.focus();<br>return false;<br>}<br>return true;<br>}<br>//--&gt;<br>&lt;/SCRIPT&gt;</p>
<p>2.6 限定表单项不能输入的字符</p>
<p>&lt;script language="javascript"&gt;<br>&lt;!--</p>
<p>function contain(str,charset)// 字符串包含测试函数<br>{ <br>var i;<br>for(i=0;i&lt;charset.length;i++)<br>if(str.indexOf(charset.charAt(i))&gt;=0)<br>return true;<br>return false;<br>}</p>
<p>function CheckForm()<br>{ <br>if ((contain(document.form.NAME.value, "%\(\)&gt;&lt;")) || (contain(document.form.MESSAGE.value, "%\(\)&gt;&lt;")))<br>{ <br>alert("输入了非法字符");<br>document.form.NAME.focus();<br>return false;<br>}<br>return true;<br>}<br>//--&gt;<br>&lt;/script&gt;</p>
<p>&nbsp;</p>
<img src ="http://www.blogjava.net/mose2006/aggbug/122532.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/mose2006/" target="_blank">摩西</a> 2007-06-07 10:47 <a href="http://www.blogjava.net/mose2006/archive/2007/06/07/122532.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>