js表单验证(转)

1:js 字符串长度限制、判断字符长度 、js限制输入、限制不能输入、textarea 长度限制
2.:js判断汉字、判断是否汉字 、只能输入汉字
3:js判断是否输入英文、只能输入英文
4:js只能输入数字,判断数字、验证数字、检测数字、判断是否为数字、只能输入数字
5:只能输入英文字符和数字
6: js email验证 、js 判断email 、信箱/邮箱格式验证
7:js字符过滤,屏蔽关键字
8:js密码验证、判断密码
2.1: js 不为空、为空或不是对象 、判断为空 、判断不为空
2.2:比较两个表单项的值是否相同
2.3:表单只能为数字和"_",
2.4:表单项输入数值/长度限定
2.5:中文/英文/数字/邮件地址合法性判断
2.6:限定表单项不能输入的字符
2.7表单的自符控制
2.8:form文本域的通用校验函数

Java代码 复制代码
  1. 1. 长度限制    
  2. <script>    
  3. function test()    
  4. {    
  5. if(document.a.b.value.length>50)    
  6. {    
  7. alert("不能超过50个字符!");    
  8. document.a.b.focus();    
  9. return false;    
  10. }    
  11. }    
  12. </script>    
  13. <form name=a οnsubmit="return test()">    
  14. <textarea name="b" cols="40" wrap="VIRTUAL" rows="6"></textarea>    
  15. <input type="submit" name="Submit" value="check">    
  16. </form>    
  17. 2. 只能是汉字    
  18. <input οnkeyup="value="/oblog/value.replace(/[^\u4E00-\u9FA5]/g,'')">    
  19. 3." 只能是英文    
  20. <script language=javascript>    
  21. function onlyEng()    
  22. {    
  23. if(!(event.keyCode>=65&&event.keyCode<=90))    
  24. event.returnvalue=false;    
  25. }    
  26. </script>    
  27. <input οnkeydοwn="onlyEng();">    
  28. 4. 只能是数字    
  29. <script language=javascript>    
  30. function onlyNum()    
  31. {    
  32. if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))    
  33. //考虑小键盘上的数字键    
  34. event.returnvalue=false;    
  35. }    
  36. </script>    
  37. <input οnkeydοwn="onlyNum();">    
  38. 5. 只能是英文字符和数字    
  39. <input οnkeyup="value="/oblog/value.replace(/[\W]/g,"'') "  
  40. onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))">    
  41. 6. 验证油箱格式    
  42. <SCRIPT LANGUAGE=javascript RUNAT=Server>    
  43. function isEmail(strEmail) {    
  44. if (strEmail.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)    
  45. return true;    
  46. else    
  47. alert("oh");    
  48. }    
  49. </SCRIPT>    
  50. <input type=text οnblur=isEmail(this.value)>    
  51. 7. 屏蔽关键字(这里屏蔽***和****)    
  52. <script language="javascript1.2">    
  53. function test() {    
  54. if((a.b.value.indexOf ("***") == 0)||(a.b.value.indexOf ("****") == 0)){    
  55. alert(":)");    
  56. a.b.focus();    
  57. return false;}    
  58. }    
  59. </script>    
  60. <form name=a οnsubmit="return test()">    
  61. <input type=text name=b>    
  62. <input type="submit" name="Submit" value="check">    
  63. </form>    
  64. 8. 两次输入密码是否相同    
  65. <FORM METHOD=POST ACTION="">    
  66. <input type="password" id="input1">    
  67. <input type="password" id="input2">    
  68. <input type="button" value="test" οnclick="check()">    
  69. </FORM>    
  70. <script>    
  71. function check()    
  72. {    
  73. with(document.all){    
  74. if(input1.value!=input2.value)    
  75. {    
  76. alert("false")    
  77. input1.value = "";    
  78. input2.value = "";    
  79. }    
  80. else document.forms[0].submit();    
  81. }    
  82. }    
  83. </script>    
  84. 够了吧 :)    
  85. 屏蔽右键 很酷    
  86. οncοntextmenu="return false" οndragstart="return false" onselectstart="return false"    
  87. 加在body中    
  88. 二    
  89. 2.1 表单项不能为空    
  90. <script language="javascript">    
  91. <!--    
  92. function CheckForm()    
  93. {      
  94. if (document.form.name.value.length == 0) {      
  95. alert("请输入您姓名!");    
  96. document.form.name.focus();    
  97. return false;    
  98. }    
  99. return true;    
  100. }    
  101. -->    
  102. </script>    
  103. 2.2 比较两个表单项的值是否相同    
  104. <script language="javascript">    
  105. <!--    
  106. function CheckForm()    
  107. if (document.form.PWD.value != document.form.PWD_Again.value) {      
  108. alert("您两次输入的密码不一样!请重新输入.");    
  109. document.ADDUser.PWD.focus();    
  110. return false;    
  111. }    
  112. return true;    
  113. }    
  114. -->    
  115. </script>    
  116. 2.3 表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等    
  117. <script language="javascript">    
  118. <!--    
  119. function isNumber(String)    
  120. {      
  121. var Letters = "1234567890-"//可以自己增加可输入值    
  122. var i;    
  123. var c;    
  124. if(String.charAt( 0 )=='-')    
  125. return false;    
  126. if( String.charAt( String.length - 1 ) == '-' )    
  127. return false;    
  128. for( i = 0; i < String.length; i ++ )    
  129. {      
  130. c = String.charAt( i );    
  131. if (Letters.indexOf( c ) < 0)    
  132. return false;    
  133. }    
  134. return true;    
  135. }    
  136. function CheckForm()    
  137. {      
  138. if(! isNumber(document.form.TEL.value)) {      
  139. alert("您的电话号码不合法!");    
  140. document.form.TEL.focus();    
  141. return false;    
  142. }    
  143. return true;    
  144. }    
  145. -->    
  146. </script>   
  147.   
  148. 2.4 表单项输入数值/长度限定    
  149. <script language="javascript">    
  150. <!--    
  151. function CheckForm()      
  152. {      
  153. if (document.form.count.value > 100 || document.form.count.value < 1)    
  154. {      
  155. alert("输入数值不能小于零大于100!");    
  156. document.form.count.focus();    
  157. return false;    
  158. }    
  159. if (document.form.MESSAGE.value.length<10)    
  160. {      
  161. alert("输入文字小于10!");    
  162. document.form.MESSAGE.focus();    
  163. return false;    
  164. }    
  165. return true;    
  166. }    
  167. //-->    
  168. </script>   
  169.   
  170.   
  171.   
  172. 5. 数字格式验证        
  173. ---------------------------------------          
  174. //函数名:fucCheckNUM         
  175. //功能介绍:检查是否为数字         
  176. //参数说明:要检查的数字         
  177. //返回值:1为是数字,0为不是数字         
  178. function fucCheckNUM(NUM)         
  179. {         
  180. var i,j,strTemp;         
  181. strTemp="0123456789";         
  182. if ( NUM.length== 0)         
  183. return 0         
  184. for (i=0;i<NUM.length;i++)         
  185. {         
  186. j=strTemp.indexOf(NUM.charAt(i));         
  187. if (j==-1)         
  188. {         
  189. //说明有字符不是数字         
  190. return 0;         
  191. }         
  192. }         
  193. //说明是数字         
  194. return 1;         
  195. }         
  196. 6. 电话号码格式验证        
  197. ---------------------------------------          
  198. //函数名:fucCheckTEL         
  199. //功能介绍:检查是否为电话号码         
  200. //参数说明:要检查的字符串         
  201. //返回值:1为是合法,0为不合法         
  202. function fucCheckTEL(TEL)         
  203. {         
  204. var i,j,strTemp;         
  205. strTemp="0123456789-()# ";         
  206. for (i=0;i<TEL.length;i++)         
  207. {         
  208. j=strTemp.indexOf(TEL.charAt(i));         
  209. if (j==-1)         
  210. {         
  211. //说明有字符不合法         
  212. return 0;         
  213. }         
  214. }         
  215. //说明合法         
  216. return 1;         
  217. }        
  218. 7. 判断输入是否为中文的函数       
  219. ---------------------------------------          
  220. function ischinese(s){       
  221. var ret=true;       
  222. for(var i=0;i<s.length;i++)       
  223. ret=ret && (s.charCodeAt(i)>=10000);       
  224. return ret;       
  225. }        
  226. 8. 综合的判断用户输入的合法性的函数      
  227. ---------------------------------------          
  228. <script language="javascript">      
  229. //限制输入字符的位数开始      
  230. //m是用户输入,n是要限制的位数      
  231. function issmall(m,n)      
  232. {      
  233. if ((m<n) && (m>0))      
  234. {      
  235. return(false);      
  236. }      
  237. else      
  238. {return(true);}      
  239. }      
  240. 9. 判断密码是否输入一致      
  241. ---------------------------------------          
  242. function issame(str1,str2)      
  243. {      
  244. if (str1==str2)      
  245. {return(true);}      
  246. else      
  247. {return(false);}      
  248. }      
  249. 10. 判断用户名是否为数字字母下滑线    
  250. ---------------------------------------          
  251. function notchinese(str){    
  252. var reg=/[^A-Za-z0-9_]/g    
  253.     if (reg.test(str)){    
  254.     return (false);    
  255.     }else{    
  256. return(true);    }    
  257. }    
  258. 2.8. form文本域的通用校验函数    
  259. ---------------------------------------          
  260. 作用:检测所有必须非空的input文本,比如姓名,账号,邮件地址等等。    
  261. 该校验现在只针对文本域,如果要针对form里面的其他域对象,可以改变判断条件。    
  262. 使用方法:在要检测的文本域中加入title文字。文字是在提示信息,   
  263. 你要提示给用户的该字段的中文名。比如要检测用户名    
  264. html如下<input name="txt_1" title="姓名">,   
  265. 当然,最好用可视化工具比如dreamweaver什么的来编辑域。    
  266. 如果要检测数字类型数据的话,再把域的id统一为sz.    
  267. javascript判断日期类型比较麻烦,所以就没有做日期类型校验的程序了.高手可以补充。    
  268. 程序比较草,只是提供一个思路。抛砖引玉! :)    
  269. 哦,对了,函数调用方法:< form οnsubmit="return dovalidate()">    
  270. function dovalidate()    
  271. {    
  272. fm=document.forms[0//只检测一个form,如果是多个可以改变判断条件    
  273.     for(i=0;i<fm.length;i++)    
  274.     {      
  275.     //检测判断条件,根据类型不同可以修改    
  276.     if(fm[i].tagName.toUpperCase()=="INPUT"    
  277. &&fm[i].type.toUpperCase()=="TEXT" && (fm[i].title!=""))    
  278.          if(fm[i].value="/blog/="")//    
  279.          {    
  280.          str_warn1=fm[i].title+"不能为空!";    
  281.          alert(str_warn1);    
  282.         fm[i].focus();    
  283.          return false;             
  284.          }    
  285.          if(fm[i].id.toUpperCase()=="SZ")//数字校验    
  286.          {    
  287.                  if(isNaN(fm[i].value))    
  288.                 { str_warn2=fm[i].title+"格式不对";    
  289.                 alert(str_warn2);    
  290.                 fm[i].focus();    
  291.                  return false;    
  292.                  }    
  293.         }    
  294.     }    
  295.     return true;    
  296. }  
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值