驗證使用者名稱是否符合長度要求
阿新 • • 發佈:2019-01-03
<input name="username" value="" length="12" maxlengthd="12"/>
資料庫裡面username vachar2(12)
這個輸入框要求用JAVASCRIPT去驗證不能超過12個數字或英文或數字英文組合,還要求不能超過6個漢字,還要驗證漢字和字母,數字的組合
如:使用者名稱1999(就可以),麥克斯韋1999(就不行)
因為資料庫裡面要求的長度是12,一個漢字就佔兩個,但是在頁面可以輸入12個漢字
請用JAVASCRIPT寫出你的解決方案?
全形 半形不考慮
資料庫裡面username vachar2(12)
這個輸入框要求用JAVASCRIPT去驗證不能超過12個數字或英文或數字英文組合,還要求不能超過6個漢字,還要驗證漢字和字母,數字的組合
如:使用者名稱1999(就可以),麥克斯韋1999(就不行)
因為資料庫裡面要求的長度是12,一個漢字就佔兩個,但是在頁面可以輸入12個漢字
請用JAVASCRIPT寫出你的解決方案?
# function test(inputVal) # { # //去除首尾空格 # inputValinputVal = inputVal.replace(/^\s*|\s*$/g,""); # //零長字串不作處理 # if ( inputVal.length == 0 ) # { # return; # } # //只能匹配數字,字母或漢字 # var _match = inputVal.match(/^[a-zA-Z0-9\u4e00-\u9fa5]+$/g); # //匹配數字或字母(包括大小寫) # var codeMatch = inputVal.match(/[a-zA-Z0-9]/g); # //匹配漢字 # var charMatch = inputVal.match(/[\u4e00-\u9fa5]/g); # //數字或字母個數 # var codeNum = codeMatch ? codeMatch.length : 0; # //漢字個數 # var charNum = charMatch ? charMatch.length : 0; # //成功 # if ( _match && codeNum + 2*charNum <= 12 ) # { # alert("輸入正確!"); # return; # } # //失敗 # alert("輸入錯誤!"); # }
全形 半形不考慮