javascript 常見的應用。複選框:全選,反選;mail地址驗證;電話號碼驗證

來源:互聯網
上載者:User
 //方法.根據傳入元素的Name,擷取它的對象.適用於單選和複選框
function $N(elementsName){ return document.getElementsByName(elementsName); }
/*
方法名 getCheckBoxValuesAry(cBoxName,boolean)
傳回值:返回複選框checkbox組的某個狀態的value值的數組,
參數說明,
    cBoxName : 複選框的name,
    boolean : true(選中)或false(未選中) ,
    separator : 字串的分隔字元,建議使用不敏感的符號.
注:拷貝到其他位置使用時,請連同  $N(elementsName) 方法一起拷貝使用.
*/
function getCheckBoxValuesAry(cBoxName,boolean){
    var cBoxObj=$N(cBoxName);
    var cBoxAry=new Array();
    for(var i=0; i<cBoxObj.length; i++){
        if(cBoxObj[i].checked == boolean){
            cBoxAry.push(cBoxObj[i].value);
        }
    }
    cBoxObj=null;
    return cBoxAry;
}
/*
方法名 setCBoxWholeSelect(cBoxName,boolean)全選複選框
傳回值:無傳回值.
功能:將name是cBoxName的複選框的選擇狀態全部修改等於參數boolean.
參數說明,
    cBoxName : 複選框的name,
    boolean : true(選中)或false(未選中) ,
注:拷貝到其他位置使用時,請連同  $N(elementsName) 方法一起拷貝使用.可以根據實際需要對方法體進行修改.
*/
function setCBoxWholeState(cBoxName,boolean){
    var cBoxObj=$N(cBoxName);
    for(var i=0;i<cBoxObj.length;i++){
        cBoxObj[i].checked=boolean;
    }
    cBoxObj=null;
}
/*
方法名 setCBoxReverse(cBoxName)反向選擇複選框
傳回值:無傳回值.
功能:將name是cBoxName的複選框的選擇狀態全部反向選擇.
參數說明,
    cBoxName : 複選框的name,
注:拷貝到其他位置使用時,請連同  $N(elementsName) 方法一起拷貝使用.可以根據實際需要對方法體進行修改
*/
function setCBoxReverse(cBoxName){
    var cBoxObj=$N(cBoxName);
    for(var i=0;i<cBoxObj.length;i++){
        if(cBoxObj[i].checked==false){ cBoxObj[i].checked=true; }
        else{ cBoxObj[i].checked=false;}
    } cBoxObj=null;
}
/*檢查電話號碼格式是否正確
傳入參數:要檢查的字串
傳回值:格式正確返回true否則返回false
*/
function  checkTelForMat(str){   
  var reg = /^(((/()?/d{2,4}(/))?[-(/s)*]){0,2})?(/d{7,8})$/;   
  if(reg.test(str))// 電話號碼格式正確   
  return true;
  else //號碼格式錯誤
  return false;
}

/*利用Regex對Email地址進行驗證
傳入參數:需要驗證的字串
傳回值:格式正確返回ture,否則返回false
*/
function checkMail(str){
    var mailArray=str.split(",");
    var patterns = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(/.[a-zA-Z0-9_-]+)+$/;
    for(i=0;i<mailArray.length;i++){
        if(patterns.test(mailArray[i])){return true;}    //alert(str+",郵件地址格式正確!");
        else{alert("'"+str+"',郵件地址格式不正確,請檢查後重新填寫!!");return false;}
    }
}

/*檢查輸入是否為數字格式
參數:要檢查的字元或字串;
傳回值:數字格式返回true,否則返回false;
*/
function checkNumber(str) {
    var Letters = "1234567890";
    var checkChar;
    if(str.length<=0){//alert("請輸入數字!!")
        return false;
    }    
    else{
        for(var i=0; i<str.length; i ++ ){
            checkChar = str.charAt( i );
            if (Letters.indexOf( checkChar) ==-1){//alert("請輸入數字!!")
                return false;
            }
        }
        return true;
    }
}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.