js上用到的一些小的驗證問題

 關於用js用到的頁面驗證的一些小問題個人體會,望高手指點不足

1.驗證輸入字符長度問題,首先還是應該先去掉輸入字符中的空格

function addUser() {

if(trim(userIdFiled.value).length < 4){

alert("用戶代碼至少四個字符!");

userIdFiled.focus();

return;

}

}

2.驗證輸入的是否爲郵箱,當然輸入不能爲空,因爲要檢驗其中的一小部分所以要用循環來判斷,結束後如果不正確回到錯誤輸入域修改不提交。

var emailFiled = document.getElementById("email");

if(trim(emailFiled.value).length!=0){

var tempEmail = trim(emailFiled.value);

var j=0;

for(var i=0;i<tempEmail.length;i++){

if(tempEmail.charAt(i)=='@'){

j++;

alert("j=="+j);

}

}

if(j!=1){

alert("輸入格式不正確!");

emailFiled.focus();

return;

}

}

3.用正則表達式驗證更加具體的部分

re = new RegExp("pattern",["flags"])

re

必選項。將要賦值爲正則表達式模式的變量名。

Pattern

必選項。要使用的正則表達式模式。如果用語法 2,用引號將模式引起來。

flags

可選項。如果使用語法 2 要用引號將 flag 引起來。標誌可以組合使用,可用的有:

  • g (全文查找出現的所有 pattern
  • i (忽略大小寫)
  • m (多行查找)

 

 compile 方法

把正則表達式編譯爲內部格式,從而執行得更快。

rgExp.compile(pattern, [flags])

參數

rgexp

必選項。正則表達式對象的一個例子。可以是變量名或文字。

pattern

必選項。字符串表達式,它包含要被編譯的正則表達式模式。

flags

可選項。可以組合使用,可用的標誌有:

  • g (全局搜索所有存在的 pattern)
  • i (忽略事件)
  • m (多行搜索) 

test()

返回一個 Boolean 值,它指出在被查找的字符串中是否存在模式。

rgexp.test(str)

參數

rgexp

必選項。包含正則表達式模式或可用標誌的正則表達式對象。

str

必選項。要在其上測試查找的字符串

var re = new RegExp(/^[a-zA-Z]/);

re.compile(/^[a-zA-Z0-9]{4,6}$/);

if(!re.test(trim(userIdFiled.value))){

alert("輸入的必須是字母或數字4~6位!");

userIdFiled.focus();

return;

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章