輸入限制(用js)_第1頁(yè)
輸入限制(用js)_第2頁(yè)
輸入限制(用js)_第3頁(yè)
輸入限制(用js)_第4頁(yè)
輸入限制(用js)_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Js代碼 1. /郵件校驗(yàn) 2. /通過(guò)校驗(yàn)返回ture,否則返回false 3. function isEmail(emailStr) . 4. if (emailStr.length = 0) . 5. return fasle; 6. else . 7. var emailPat=/(.+)(.+)$/; 8. var specialChars="()<>,;:"." 9. var validChars="s" + specialChars + "" 10. var quotedUser="(&q

2、uot;"*")" 11. var ipDomainPat=/(d.1,3).(d.1,3).(d.1,3).(d.1,3)$/; 12. var atom=validChars + '+' 13. var word="(" + atom + "|" + quotedUser + ")" 14. var userPat=new RegExp("" + word + "(." + word + ")*$"); 15. var dom

3、ainPat=new RegExp("" + atom + "(." + atom + ")*$"); 16. var matchArray=emailStr.match(emailPat); 17. if (matchArray = null) . 18. return false; 19. 20. var user=matchArray1; 21. var domain=matchArray2; 22. if (user.match(userPat) = null) . 23. return false; 24. 25. var

4、IPArray = domain.match(ipDomainPat); 26. if (IPArray != null) . 27. for (var i = 1; i <= 4; i+) . 28. if (IPArrayi > 255) . 29. return false; 30. 31. 32. return true; 33. 34. var domainArray=domain.match(domainPat); 35. if (domainArray = null) . 36. return false; 37. 38. var atomPat=new RegExp

5、(atom,"g"); 39. var domArr=domain.match(atomPat); 40. var len=domArr.length; 41. if (domArrdomArr.length-1.length < 2) | 42. (domArrdomArr.length-1.length > 3) . 43. return false; 44. 45. if (len < 2) . 46. return false; 47. 48. return true; 49. 50. 51. 52. 53. /IP地址校驗(yàn) 54. /正確的IP地

6、址回ture,否則返回false 55. function isIp(strIp) . 56. var ipDomainPat=/(20-4d|250-5|01?dd?).).3(20-4d|250-5|01?dd?)$/; 57. var matchArray=strIp.match(ipDomainPat); 58. if(matchArray!=null). 59. return true; 60. 61. 62. 63. 64. /電話號(hào)碼校驗(yàn) 65. /正確的電話號(hào)碼(包括區(qū)號(hào)和“-”010-12345678 )則返回ture,否則返回false 66.

7、 function isTelphoneNum(telNum). 67. var telphoneNumPat=/0d.2-d.7,8|0d.3-d.7,8$/; 68. var matchArray=telNum.match(telphoneNumPat); 69. if(matchArray!=null). 70. return true; 71. 72. 73. 74. 75. /手機(jī)號(hào)碼校驗(yàn) 77. function isMobilephoneNum(mobileNum). 78. var mobilephoneNumPat=/1d.10|01d.10$/; 79. var match

8、Array=mobileNum.match(mobilephoneNumPat); 80. if(matchArray!=null). 81. return true; 82. 83. 84. 85. /純數(shù)字驗(yàn)證輸入,輸入為純數(shù)字則返回ture,否則返回false 86. function isDigital(str). 87. var digitalPot=/d*$/; 88. var matchArray=str.match(digitalPot); 89. if(matchArray!=null). 90. return true; 91. 92. 93. /18位身份證驗(yàn)證,輸入正確

9、的號(hào)碼返回ture,否則返回false 94. function card(id). 95. var Wi=new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); 96. var ai="10X98765432" 97. var sum=0 98. var ssum=0; 99. /alert(id.charAt(i); 100. for(var i=0;i<17;i+). 101. ssum=eval(Wii*id.charAt(i); 102. sum=ssum+sum; 103. 104. var modNum=sum

10、%11; 105. if(ai.charAt(modNum)=id.charAt(17). 106. return true; 107. 108. 109. 110. /自定義規(guī)則,mask為正確的正則表達(dá)式 111. /返回通過(guò)自定義驗(yàn)證的字符串 112. function matchPattern(value,mask) . 113. return mask.exec(value); 114. 115. 116. /判斷是否為英文,正確返回ture,否則返回false 117. function isEnglish(name) . 118. if(name.length = 0) 119.

11、 return false; 120. for(i = 0; i < name.length; i+) . 121. if(name.charCodeAt(i) > 128) 122. return false; 123. 124. return true; 125. 126. 127. /判斷是否為中文,正確返回 ture,否則返回false 128. function isChinese(name) 129. . 130. if(name.length = 0) 131. return false; 132. for(i = 0; i < name.length; i+)

12、 . 133. if(name.charCodeAt(i) > 128) 134. return true; 135. 136. return false; 137. 138. 139. /非法字符判斷,str中有charset則返回ture, 140. function contain(str,charset). 141. var i; 142. for(i=0;i<charset.length;i+). 143. if(str.indexOf(charset.charAt(i)>=0). 144. return true; 145. 146. return false;

13、147. 148. 149. 150. /選中文本框或文本域文本,在input位置加上 onClick/onFocus="textSelect();" 即可 151. function textSelect() . 152. var obj = document.activeElement; 153. if(obj.tagName = "TEXTAREA") 154. . 155. obj.select(); 156. 157. if(obj.tagName = "INPUT" ) . 158. if(obj.type = "

14、;text") 159. obj.select(); 160. 161. 162. 163. /只允許輸入數(shù)字 字母 下劃線 164. function textOnly(). 165. var i= window.event.keyCode ; 166. /8=backspace 167. /9=tab 168. /37=left arrow 169. /39=right arrow 170. /46=delete 171. /4857=09 172. /97122=az 173. /6590=AZ 174. /95=_ 175. if (!(i<=57 &&

15、 i>=48)|(i>=97 && i<=122)|(i>=65 && i<=90)|(i=95)|(i=8)|(i=9)|(i=37)|(i=39)|(i=46). 176. /window.event.keyCode=27; 177. event.returnValue=false; 178. return false; 179. else . 180. /window.event.keyCode=keycode; 181. return true; 182. 183. 184. 185. /判斷URL,正確的URL返回true

16、,否則返回false 186. function isURL(URL). 187. var urlPat=/http:/A-Za-z0-9+.A-Za-z0-9+/=?%-&_':+!*(<>"")*$/; 188. var matchArray=URL.match(urlPat); 189. if(matchArray!=null) 190. return true; 191. else 192. return false; 193. 194. 195. 196. /判斷短日期(如2003-12-05) 197. function isDate

17、(date) 198. var r = date.match(/(d1,4)(-|/)(d1,2) (d1,2)$/); 199. if(r=null) 200. return false; 201. 202. if (r1<1 | r3<1 | r3-1>12 | r4<1 | r4>31) 203. return false 204. 205. var d= new Date(r1, r3-1, r4); 206. if(d.getFullYear()=r1&&(d.getMonth()+1)=r3&&d.getDate()=r

18、4) 207. return true; 208. 209. 210. 211. /判斷短時(shí)間(HH:MM:SS) 212. function isTime(time) 213. var a = time.match(/(d1,2)(:)?(d1,2) (d1,2)$/); 214. if (a = null) 215. 216. return false; 217. 218. if (a1>23 | a1<0 | a3>60 | a3<0 | a4>60 | a4<0) 219. return false 220. 221. return true; 22

19、2. 223. 224. /在表單元素中除button外,按回車(chē)鍵模擬TAB功能 225. function enterToTab() 226. if (window.event.keyCode = 13 && window.event.ctrlKey = false && window.event.altKey = false) 227. if (window.event.srcElement.type != "button") 228. window.event.keyCode = 9; 229. else 230. return tru

20、e; 231. 232. 233. 234. /在填寫(xiě)表單時(shí)按回車(chē)鍵提交表單,name為sumbit控件名 235. function enterTOSubmit(name) 236. if (window.event.keyCode = 13 && window.event.ctrlKey = false && window.event.altKey = false) 237. var objSubmit=document.getElementById(name); 238. objSubmit.focus; 239. else 240. return tru

21、e; 241. 242. 243. 244. /返回去前后全角半角空格后的字符串 245. function trimFullSpace(strIn) 246. if (strIn = null) 247. return null; 248. else 249. var len = strIn.length; 250. var start = 0; 251. var end = strIn.length; 252. for (var i = 0; i < len; i+) 253. if (strIn.charAt(i) = ' ' | strIn.charAt(i) =

22、 ' ') 254. start+; 255. else 256. break; 257. 258. 259. for (var i = len - 1; i > -1; i-) 260. if (strIn.charAt(i) = ' '| strIn.charAt(i) = ' ') 261. end-; 262. else 263. break; 264. 265. 266. if (start >= end) 267. return "" 268. else 269. return strIn.substr

23、ing(start, end); 270. 271. 272. 273. 274. /判斷是否為浮點(diǎn)數(shù),并且小數(shù)點(diǎn)后面為index位,正確返回true 275. function isFloat(float,index) 276. var floatPat=/(d1,).(d1,)$/; 277. var matchArray=float.match(floatPat); 278. if(matchArray!=null) 279. if(matchArray2.length=index) 280. return true; 281. 282. 283. 284. 285. /判斷字符最大長(zhǎng)度

24、,如果strin的長(zhǎng)度不大于maxLen返回ture 286. function maxLength(strin,maxLen) 287. var len=0; 288. for(var i=0;i<strin.length;i+) 289. 290. if(strin.charCodeAt(i)>256) 291. 292. len += 2; 293. else 294. len+; 295. 296. 297. if(len<=maxLen) 298. return true; 299. 300. 301. 302. /判斷字符最小長(zhǎng)度,如果的長(zhǎng)度不小于minLen返回

25、ture 303. function minLength(strin,minLen) 304. var len=0; 305. for(var i=0;i<strin.length;i+) 306. 307. if(strin.charCodeAt(i)>256) 308. 309. len += 2; 310. else 311. len+; 312. 313. 314. if(len>=maxLen) 315. return true; 316. 317. 318. 319. /由三個(gè)函數(shù)組成checkPassWord(),charMode(),bitTotal() 32

26、0. /校驗(yàn)密碼復(fù)雜度,密碼由數(shù)字,大小寫(xiě)字母,特殊字符中的任意三種組合,通過(guò)則返回true 321. function checkPassWord(passWord,maxLen) 322. if (passWord.length<=maxLen) 323. return false; /密碼太短 324. Modes=0; 325. for (i=0;i<passWord.length;i+) 326. /測(cè)試一個(gè)字符并判斷一共有多少種模式. 327. Modes|=charMode(passWord.charCodeAt(i); 328. 329. return bitTot

27、al(Modes); 330. 331. /CharMode函數(shù) 332. /判斷某個(gè)字符是屬于哪一種類(lèi)型. 333. function charMode(iN) 334. if (iN>=48 && iN <=57) /數(shù)字 335. return 1; 336. if (iN>=65 && iN <=90) /大寫(xiě)字母 337. return 2; 338. if (iN>=97 && iN <=122) /小寫(xiě) 339. return 4; 340. else 341. return 8; /特殊字符 3

28、42. 343. /bitTotal函數(shù) 344. /計(jì)算出當(dāng)前密碼當(dāng)中一共有多少種模式 345. function bitTotal(num) 346. modes=0; 347. for (i=0;i<4;i+) 348. if (num & 1) modes+; 349. num>>>=1; 350. 351. if(modes=3) 352. return true 353. 354. 355. 356. /判斷是否為合法的用戶名,合法返回true,否則返回flase 357. /用戶名由字母和數(shù)字、下劃線組成,且只能以字母開(kāi)頭,且長(zhǎng)度最小為6位 358

29、. function isAccount(str) 359. if(/a-zw3,$/i.test(str) 360. 361. return true; 362. else 363. return false; 364. 365. 366. 367. /取得字符串中中文字的個(gè)數(shù) 368. function getChineseNum(obstring) 369. var pattern = /一-龥+$/i; 370. var maxL,minL; 371. maxL = obstring.length; 372. obstring = obstring.replace(pattern,&q

30、uot;"); 373. minL = obstring.length; 374. return (maxL - minL) 375. 376. 377. /判斷輸入的字符是否為Integer類(lèi)型,是返回true,否則返回false 378. function isInteger(str) 379. var integerPat=/-+?d+$/; 380. var matchArray=str.match(integerPat); 381. if(matchArray!=null) 382. return true; 383. else 384. return false; 385

31、. 386. 387. 388. /判斷輸入的字符是否為Double類(lèi)型,是返回true,否則返回false 389. function isDouble(str) 390. var doublePat=/-+?d+(.d+)?$/; 391. var matchArray=str.match(doublePat); 392. if(matchArray!=null) 393. return true; 394. else 395. return false; 396. 397. /郵件校驗(yàn) /通過(guò)校驗(yàn)返回ture,否則返回false function isEmail(emailStr) .

32、if (emailStr.length = 0) . return fasle; else . var emailPat=/(.+)(.+)$/; var specialChars="()<>,;:"." var validChars="s" + specialChars + "" var quotedUser="(""*")" var ipDomainPat=/(d.1,3).(d.1,3).(d.1,3).(d.1,3)$/; var atom=validCh

33、ars + '+' var word="(" + atom + "|" + quotedUser + ")" var userPat=new RegExp("" + word + "(." + word + ")*$"); var domainPat=new RegExp("" + atom + "(." + atom + ")*$"); var matchArray=emailStr.match(e

34、mailPat); if (matchArray = null) . return false; var user=matchArray1; var domain=matchArray2; if (user.match(userPat) = null) . return false; var IPArray = domain.match(ipDomainPat); if (IPArray != null) . for (var i = 1; i <= 4; i+) . if (IPArrayi > 255) . return false; return true; var doma

35、inArray=domain.match(domainPat); if (domainArray = null) . return false; var atomPat=new RegExp(atom,"g"); var domArr=domain.match(atomPat); var len=domArr.length; if (domArrdomArr.length-1.length < 2) | (domArrdomArr.length-1.length > 3) . return false; if (len < 2) . return fals

36、e; return true; /IP地址校驗(yàn) /正確的IP地址回ture,否則返回false function isIp(strIp) . var ipDomainPat=/(20-4d|250-5|01?dd?).).3(20-4d|250-5|01?dd?)$/; var matchArray=strIp.match(ipDomainPat); if(matchArray!=null). return true; /電話號(hào)碼校驗(yàn) /正確的電話號(hào)碼(包括區(qū)號(hào)和“-”010-12345678 )則返回ture,否則返回false function isTelph

37、oneNum(telNum). var telphoneNumPat=/0d.2-d.7,8|0d.3-d.7,8$/; var matchArray=telNum.match(telphoneNumPat); if(matchArray!=null). return true; /手機(jī)號(hào)碼校驗(yàn) function isMobilephoneNum(mobileNum). var mobilephoneNumPat=/1d.10|01d.10$/; var matchArray=mobileNum.match(mobilephoneNumPat); if(matchArray!=null). r

38、eturn true; /純數(shù)字驗(yàn)證輸入,輸入為純數(shù)字則返回ture,否則返回false function isDigital(str). var digitalPot=/d*$/; var matchArray=str.match(digitalPot); if(matchArray!=null). return true; /18位身份證驗(yàn)證,輸入正確的號(hào)碼返回ture,否則返回false function card(id). var Wi=new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); var ai="10X98765432&

39、quot; var sum=0 var ssum=0; /alert(id.charAt(i); for(var i=0;i<17;i+). ssum=eval(Wii*id.charAt(i); sum=ssum+sum; var modNum=sum%11; if(ai.charAt(modNum)=id.charAt(17). return true; /自定義規(guī)則,mask為正確的正則表達(dá)式 /返回通過(guò)自定義驗(yàn)證的字符串 function matchPattern(value,mask) . return mask.exec(value); /判斷是否為英文,正確返回ture,否

40、則返回false function isEnglish(name) . if(name.length = 0) return false; for(i = 0; i < name.length; i+) . if(name.charCodeAt(i) > 128) return false; return true; /判斷是否為中文,正確返回 ture,否則返回false function isChinese(name) . if(name.length = 0) return false; for(i = 0; i < name.length; i+) . if(name

41、.charCodeAt(i) > 128) return true; return false; /非法字符判斷,str中有charset則返回ture, function contain(str,charset). var i; for(i=0;i<charset.length;i+). if(str.indexOf(charset.charAt(i)>=0). return true; return false; /選中文本框或文本域文本,在input位置加上 onClick/onFocus="textSelect();" 即可 function te

42、xtSelect() . var obj = document.activeElement; if(obj.tagName = "TEXTAREA") . obj.select(); if(obj.tagName = "INPUT" ) . if(obj.type = "text") obj.select(); /只允許輸入數(shù)字 字母 下劃線 function textOnly(). var i= window.event.keyCode ; /8=backspace /9=tab /37=left arrow /39=right a

43、rrow /46=delete /4857=09 /97122=az /6590=AZ /95=_ if (!(i<=57 && i>=48)|(i>=97 && i<=122)|(i>=65 && i<=90)|(i=95)|(i=8)|(i=9)|(i=37)|(i=39)|(i=46). /window.event.keyCode=27; event.returnValue=false; return false; else . /window.event.keyCode=keycode; return

44、true; /判斷URL,正確的URL返回true,否則返回false function isURL(URL). var urlPat=/http:/A-Za-z0-9+.A-Za-z0-9+/=?%-&_':+!*(<>"")*$/; var matchArray=URL.match(urlPat); if(matchArray!=null) return true; else return false; /判斷短日期(如2003-12-05) function isDate(date) var r = date.match(/(d1,4)(-

45、|/)(d1,2) (d1,2)$/); if(r=null) return false; if (r1<1 | r3<1 | r3-1>12 | r4<1 | r4>31) return false var d= new Date(r1, r3-1, r4); if(d.getFullYear()=r1&&(d.getMonth()+1)=r3&&d.getDate()=r4) return true; /判斷短時(shí)間(HH:MM:SS) function isTime(time) var a = time.match(/(d1,2

46、)(:)?(d1,2) (d1,2)$/); if (a = null) return false; if (a1>23 | a1<0 | a3>60 | a3<0 | a4>60 | a4<0) return false return true; /在表單元素中除button外,按回車(chē)鍵模擬TAB功能 function enterToTab() if (window.event.keyCode = 13 && window.event.ctrlKey = false && window.event.altKey = fals

47、e) if (window.event.srcElement.type != "button") window.event.keyCode = 9; else return true; /在填寫(xiě)表單時(shí)按回車(chē)鍵提交表單,name為sumbit控件名 function enterTOSubmit(name) if (window.event.keyCode = 13 && window.event.ctrlKey = false && window.event.altKey = false) var objSubmit=document.getE

48、lementById(name); objSubmit.focus; else return true; /返回去前后全角半角空格后的字符串 function trimFullSpace(strIn) if (strIn = null) return null; else var len = strIn.length; var start = 0; var end = strIn.length; for (var i = 0; i < len; i+) if (strIn.charAt(i) = ' ' | strIn.charAt(i) = ' ') s

49、tart+; else break; for (var i = len - 1; i > -1; i-) if (strIn.charAt(i) = ' '| strIn.charAt(i) = ' ') end-; else break; if (start >= end) return "" else return strIn.substring(start, end); /判斷是否為浮點(diǎn)數(shù),并且小數(shù)點(diǎn)后面為index位,正確返回true function isFloat(float,index) var floatPat=/(d1,).(d1,)$/; var matchArray=float.match(floatPat); if(matchArray!=null) if(matchArray2.length=index) return true; /判斷字符最大長(zhǎng)度,如果strin的長(zhǎng)度不大于maxLen返回ture function maxLength(strin,maxLen) var len=0; for(var i=0;i<strin.length;i+) if(strin.charCodeA

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論