国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

form表單驗證包括(強悍的身份驗證和銀行卡驗證),不只是正則哦

ShevaKuilin / 1135人閱讀

摘要:銀行卡驗證銀行卡驗證身份證驗證身份證號碼為位或者位,位時全為數字,位前位為數字,最后一位是校驗位,可能為數字或字符。

銀行卡驗證:

/**
 * 銀行卡驗證
 * @param {*string} str
 */
function isBankCard(str) {
    var regex = /^(998801|998802|622525|622526|435744|435745|483536|528020|526855|622156|622155|356869|531659|622157|627066|627067|627068|627069)d{10}$/;
    if (regex.test(str)) {
        return true;
    }
    return false;
}

身份證驗證:

function isIdCard (idcard) {
  if (!idcard) {
    return false;
  }
  var num = idcard.toUpperCase();
  //身份證號碼為15位或者18位,15位時全為數字,18位前17位為數字,最后一位是校驗位,可能為數字或字符X。
  if (!/(^d{15}$)|(^d{17}([0-9]|X)$)/.test(num)) {
    // alert("輸入的身份證號長度不對,或者號碼不符合規定!
15位號碼應全為數字,18位號碼末位可以為數字或X。");
    return false;
  }
  //校驗位按照ISO 7064:1983.MOD 11-2的規定生成,X可以認為是數字10。
  //下面分別分析出生日期和校驗位
  var len, re;
  len = num.length;
  if (len == 15) {
    re = new RegExp(/^(d{6})(d{2})(d{2})(d{2})(d{3})$/);
    var arrSplit = num.match(re);

    //檢查生日日期是否正確
    var dtmBirth = new Date(
      "19" + arrSplit[2] + "/" + arrSplit[3] + "/" + arrSplit[4]
    );
    var bGoodDay;
    bGoodDay =
      dtmBirth.getYear() == Number(arrSplit[2]) &&
      dtmBirth.getMonth() + 1 == Number(arrSplit[3]) &&
      dtmBirth.getDate() == Number(arrSplit[4]);
    if (!bGoodDay) {
      // alert("輸入的身份證號里出生日期不對!");
      return false;
    } else {
      //將15位身份證轉成18位
      //校驗位按照ISO 7064:1983.MOD 11-2的規定生成,X可以認為是數字10。
      var arrInt = new Array(
        7,
        9,
        10,
        5,
        8,
        4,
        2,
        1,
        6,
        3,
        7,
        9,
        10,
        5,
        8,
        4,
        2
      );
      var arrCh = new Array(
        "1",
        "0",
        "X",
        "9",
        "8",
        "7",
        "6",
        "5",
        "4",
        "3",
        "2"
      );
      var nTemp = 0, i;
      num = num.substr(0, 6) + "19" + num.substr(6, num.length - 6);
      for (i = 0; i < 17; i++) {
        nTemp += num.substr(i, 1) * arrInt[i];
      }
      num += arrCh[nTemp % 11];
      return true;
    }
  }
  if (len == 18) {
    re = new RegExp(/^(d{6})(d{4})(d{2})(d{2})(d{3})([0-9]|X)$/);
    var arrSplit = num.match(re);

    //檢查生日日期是否正確
    var dtmBirth = new Date(
      arrSplit[2] + "/" + arrSplit[3] + "/" + arrSplit[4]
    );
    var bGoodDay;
    bGoodDay =
      dtmBirth.getFullYear() == Number(arrSplit[2]) &&
      dtmBirth.getMonth() + 1 == Number(arrSplit[3]) &&
      dtmBirth.getDate() == Number(arrSplit[4]);
    if (!bGoodDay) {
      //alert(dtmBirth.getYear());
      //alert(arrSplit[2]);
      //alert("輸入的身份證號里出生日期不對!");
      return false;
    } else {
      //檢驗18位身份證的校驗碼是否正確。
      //校驗位按照ISO 7064:1983.MOD 11-2的規定生成,X可以認為是數字10。
      var valnum;
      var arrInt = new Array(
        7,
        9,
        10,
        5,
        8,
        4,
        2,
        1,
        6,
        3,
        7,
        9,
        10,
        5,
        8,
        4,
        2
      );
      var arrCh = new Array(
        "1",
        "0",
        "X",
        "9",
        "8",
        "7",
        "6",
        "5",
        "4",
        "3",
        "2"
      );
      var nTemp = 0, i;
      for (i = 0; i < 17; i++) {
        nTemp += num.substr(i, 1) * arrInt[i];
      }
      valnum = arrCh[nTemp % 11];
      if (valnum != num.substr(17, 1)) {
        //alert("18位身份證的校驗碼不正確!應該為:" + valnum);
        return false;
      }
      return true;
    }
  }
  return false;
}

手機號碼驗證:

//驗證手機號碼
function isMobile(s) {
  var regu = /^(13[0-9]|15[0-9]|18[0-9]|147|145|149|170|171|173|175|176|177|178)d{8}$/;
  if (regu.test(s)) {
    return true;
  } else {
    return false;
  }
}

固話驗證:

//驗證固話
function isTelephone(str) {
  var myReg = /([0-9]{3,4}-)?[0-9]{7,8}/;
  if (myReg.test(str)) return true;
  return false;
}

中文文字驗證:

//驗證是否是中文
function isChinese(str) {
  var regu = "^[u4E00-u9FA5uF900-uFA2D]+$";
  var re = new RegExp(regu);
  if (re.test(str)) {
    return true;
  } else {
    return false;
  }
}

郵箱驗證:

//驗證郵箱
function isEmail(str) {
  var myReg = /^(w-*.*)+@(w-?)+(.w{2,4})+$/;
  if (myReg.test(str)) return true;
  return false;
}

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/82441.html

相關文章

  • 接口測試要測試什么?

    摘要:接口測試主要用于檢測外部系統與系統之間以及內部各個子系統之間的交互點。二接口測試用例設計接口測試的用例設計是關鍵,不能只是單純正常請求通過就算接口測試過了,要從業務功能性能等上去設計用例。 ...

    邱勇 評論0 收藏0
  • 常見六大Web 安全攻防解析

    摘要:想閱讀更多優質原創文章請猛戳博客一,跨站腳本攻擊,因為縮寫和重疊,所以只能叫??缯灸_本攻擊是指通過存在安全漏洞的網站注冊用戶的瀏覽器內運行非法的標簽或進行的一種攻擊。跨站腳本攻擊有可能造成以下影響利用虛假輸入表單騙取用戶個人信息。 前言 在互聯網時代,數據安全與個人隱私受到了前所未有的挑戰,各種新奇的攻擊技術層出不窮。如何才能更好地保護我們的數據?本文主要側重于分析幾種常見的攻擊的類型...

    lidashuang 評論0 收藏0
  • va.js——Vue 表單驗證插件寫作過程

    摘要:一表單驗證模塊的構成任何表單驗證模塊都是由配置校驗報錯取值這幾部分構成的。其實我是想寫個指令來完成表單驗證的事的。當然表單驗證這種是高度定制化的。 前言 前段時間,老大搭好了Vue的開發環境,于是我們愉快地從JQ來到了Vue。這中間做的時候,在表單驗證上做的不開心,看到vue的插件章節,感覺自己也能寫一個,因此就自己開始寫了一個表單驗證插件va.js。 當然為什么不找個插件呢? vu...

    suosuopuo 評論0 收藏0
  • vue-cdd-validator vue.js 表單驗證插件介紹

    摘要:示例電話電話錯誤信息指示指令對應的表單控件的驗證結果。其主要是根據驗證的結果進行的值的變換。如果為空值則默認把所有帶有驗證的空間作為需要驗證對象。 cddv vue.js 表單驗證插件使用說明 版本:1.0.8-6 獲取 github:這里 npm安裝 npm i vue-cdd-validator --save yarn安裝 yarn add vue-cdd-validator 安裝...

    VEIGHTZ 評論0 收藏0
  • 前端技術 博客文章、書籍 積累

    摘要:好多編輯器例如等都支持這樣的語法來快速的編寫代碼如何優雅地使用把標簽放在結束標簽之后結束標簽之前的差別什么是響應式設計怎樣進行 書籍 《JavaScriptDOM編程藝術》《JavaScript高級程序設計》《JavaScript框架設計》《JavaScript專家編程》《JavaScript Ninjia》《JavaScript語言精粹(修訂版)》《JavaScript設計模式》《J...

    LiangJ 評論0 收藏0

發表評論

0條評論

ShevaKuilin

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<