<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        番茄的表單驗證類代碼修改版_表單特效

        來源:懂視網(wǎng) 責編:小采 時間:2020-11-27 20:39:33
        文檔

        番茄的表單驗證類代碼修改版_表單特效

        番茄的表單驗證類代碼修改版_表單特效:在經典論壇上發(fā)過一次,個人的項目中在后臺處理時用到這個東西,對于簡單的表單驗證還是挺方便的。 因為不想讓代碼變得太臃腫,所以有很多不常用的功能就沒有再添加了 對于我佛山人的意見就沒有做修改了,為什么?因為我懶唄,哈哈 今天看到omeweb也修改了一
        推薦度:
        導讀番茄的表單驗證類代碼修改版_表單特效:在經典論壇上發(fā)過一次,個人的項目中在后臺處理時用到這個東西,對于簡單的表單驗證還是挺方便的。 因為不想讓代碼變得太臃腫,所以有很多不常用的功能就沒有再添加了 對于我佛山人的意見就沒有做修改了,為什么?因為我懶唄,哈哈 今天看到omeweb也修改了一

        在經典論壇上發(fā)過一次,個人的項目中在后臺處理時用到這個東西,對于簡單的表單驗證還是挺方便的。
        因為不想讓代碼變得太臃腫,所以有很多不常用的功能就沒有再添加了
        對于我佛山人的意見就沒有做修改了,為什么?因為我懶唄,哈哈
        今天看到omeweb也修改了一個版本,做了許多修改,改得挺不錯的,謝謝了。

        源碼在這里:

        //去除字符串兩邊的空格
        String.prototype.trim = function () {
        return this.replace(/(^\s+)|(\s+$)/g, "");
        }
        //檢測字符串是否為空
        String.prototype.isEmpty = function () {
        return !(/.?[^\s ]+/.test(this));
        }
        //檢測值是否介于某兩個指定的值之間
        String.prototype.isBetween = function (val, min, max) {
        return isNaN(val) == false && val >= min && val <= max;
        }
        //獲取最大值或最小值
        String.prototype.getBetweenVal = function (what) {
        var val = this.split(',');
        var min = val[0];
        var max = val[1] == null ? val[0] : val[1];
        if (parseInt(min) > parseInt(max)) {
        min = max;
        max = val[0];
        }
        return what == 'min' ? (isNaN(min) ? null : min) : (isNaN(max) ? null : max);
        }
        var validator = function (formObj) {
        this.allTags = formObj.getElementsByTagName('*');
        //字符串驗證正則表達式
        this.reg = new Object();
        this.reg.english = /^[a-zA-Z0-9_\-]+$/;
        this.reg.chinese = /^[\u0391-\uFFE5]+$/;
        this.reg.number = /^[-\+]?\d+(\.\d+)?$/;
        this.reg.integer = /^[-\+]?\d+$/;
        this.reg.float = /^[-\+]?\d+(\.\d+)?$/;
        this.reg.date = /^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2})$/;
        this.reg.email = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
        this.reg.url = /^(((ht|f)tp(s?))\:\/\/)[a-zA-Z0-9]+\.[a-zA-Z0-9]+[\/=\?%\-&_~`@[\]
        \':+!]*([^<>\"\"])*$/;
        this.reg.phone = /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d
        {1,4})?$/;
        this.reg.mobile = /^((\(\d{2,3}\))|(\d{3}\-))?((13\d{9})|(159\d{8}))$/;
        this.reg.ip = /^(0|[1-9]\d?|[0-1]\d{2}|2[0-4]\d|25[0-5]).(0|[1-9]\d?|[0-1]\d{2}|2[0-4]
        \d|25[0-5]).(0|[1-9]\d?|[0-1]\d{2}|2[0-4]\d|25[0-5]).(0|[1-9]\d?|[0-1]\d{2}|2[0-4]\d|25[0-
        5])$/;
        this.reg.zipcode = /^[1-9]\d{5}$/;
        this.reg.qq = /^[1-9]\d{4,10}$/;
        this.reg.msn = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
        this.reg.idcard = /(^\d{15}$)|(^\d{17}[0-9Xx]$)/;
        //錯誤輸出信息
        this.tip = new Object();
        this.tip.unknow = '未找到的驗證類型,無法執(zhí)行驗證。';
        this.tip.paramError = '參數(shù)設置錯誤,無法執(zhí)行驗證。';
        this.tip.required = '不允許為空。';
        this.tip.english = '僅允許英文字符及下劃線 (a-zA-Z0-9_)。';
        this.tip.chinese = '僅允許中文字符。';
        this.tip.number = '不是一個有效的數(shù)字。';
        this.tip.integer = '不是一個有效的整數(shù)。';
        this.tip.float = '不是一個有效的浮點數(shù)。';
        this.tip.date = '不是一個有效的日期格式。 (例如:2007-06-29)';
        this.tip.email = '不是一個有效的電子郵件格式。';
        this.tip.url = '不是一個有效的超鏈接格式。';
        this.tip.phone = '不是一個有效的電話號碼。';
        this.tip.mobile = '不是一個有效的手機號碼。';
        this.tip.ip = '不是一個有效的IP地址。';
        this.tip.zipcode = '不是一個有效的郵政編碼。';
        this.tip.qq = '不是一個有效的QQ號碼。';
        this.tip.msn = '不是一個有效的MSN帳戶。';
        this.tip.idcard = '不是一個有效的身份證號碼。';
        //獲取控件名稱
        this.getControlName = function ()
        {
        return this.element.getAttribute('controlName') == null
        ? '指定控件的值'
        : this.element.getAttribute('controlName');
        }
        //設定焦點
        this.setFocus = function (ele) {
        try {
        ele.focus();
        } catch (e){}
        }
        //設置邊框顏色
        this.setBorderColor = function (ele) {
        var borderColor = ele.currentStyle ?
        ele.currentStyle.borderColor :
        document.defaultView.getComputedStyle(ele, null)['borderColor'];
        ele.style.borderColor = '#ff9900';
        ele.onkeyup = function () {
        this.style.borderColor = borderColor;
        }
        }
        //輸出錯誤反饋信息
        this.feedback = function (type) {
        try {
        var msg = eval('this.tip.' + type) == undefined ?
        type :
        this.getControlName() + eval('this.tip.' + type);
        } catch (e) {
        msg = type;
        }
        this.setBorderColor(this.element);
        alert(msg);
        this.setFocus(this.element);
        };
        //執(zhí)行字符串驗證
        this.validate = function () {
        var v = this.element.value;
        //驗證是否允許非空
        var required = this.element.getAttribute('required');
        if (required != null && v.isEmpty()) {
        this.feedback('required');
        return false;
        }
        //驗證是否合法格式
        var dataType = this.element.getAttribute('dataType');
        if (!v.isEmpty() && dataType != null && dataType.toLowerCase() != 'password') {
        dataType = dataType.toLowerCase();
        try {
        if (!(eval('this.reg.' + dataType)).test(v)) {
        this.feedback(dataType);
        return false;
        }
        } catch(e) {
        this.feedback('unknow');
        return false;
        }
        }
        //執(zhí)行數(shù)據(jù)驗證
        var confirm = this.element.getAttribute('confirm');
        if (confirm != null) {
        try {
        var data = eval('formObj.' + confirm + '.value');
        if (v != data) {
        alert('兩次輸入的內容不一致,請重新輸入。');
        this.setBorderColor(this.element);
        this.setFocus(this.element);
        return false;
        }
        } catch (e) {
        this.feedback('paramError');
        return false;
        }
        }
        //驗證數(shù)字大小
        var dataBetween = this.element.getAttribute('dataBetween');
        if (!v.isEmpty() && dataBetween != null) {
        var min = dataBetween.getBetweenVal('min');
        var max = dataBetween.getBetweenVal('max');
        if (min == null || max == null) {
        this.feedback('paramError');
        return false;
        }
        if (!v.isBetween(v.trim(), min, max)) {
        this.feedback(this.getControlName() + '必須是介于 ' + min + '-' + max + ' 之
        間的數(shù)字。');
        return false;
        }
        }
        //驗證字符長度
        var dataLength = this.element.getAttribute('dataLength');
        if (!v.isEmpty() && dataLength != null) {
        var min = dataLength.getBetweenVal('min');
        var max = dataLength.getBetweenVal('max');
        if (min == null || max == null) {
        this.feedback('paramError');
        return false;
        }
        if (!v.isBetween(v.trim().length, min, max)) {
        this.feedback(this.getControlName() + '必須是 ' + min + '-' + max + ' 個字符
        。');
        return false;
        }
        }
        return true;
        };
        //執(zhí)行初始化操作
        this.init = function () {
        for (var i=0; i if (this.allTags[i].tagName.toUpperCase() == 'INPUT' ||
        this.allTags[i].tagName.toUpperCase() == 'SELECT' ||
        this.allTags[i].tagName.toUpperCase() == 'TEXTAREA')
        {
        this.element = allTags[i];
        if (!this.validate())
        return false;
        }
        }
        };
        return this.init();
        }

        聲明:本網(wǎng)頁內容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        番茄的表單驗證類代碼修改版_表單特效

        番茄的表單驗證類代碼修改版_表單特效:在經典論壇上發(fā)過一次,個人的項目中在后臺處理時用到這個東西,對于簡單的表單驗證還是挺方便的。 因為不想讓代碼變得太臃腫,所以有很多不常用的功能就沒有再添加了 對于我佛山人的意見就沒有做修改了,為什么?因為我懶唄,哈哈 今天看到omeweb也修改了一
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲AV无码久久| 久久久久无码专区亚洲av | 中文字幕第一页亚洲| 亚洲Av无码国产一区二区| 成人免费午夜在线观看| 亚洲日韩国产一区二区三区在线| 日本免费中文字幕在线看| 国产精品美女自在线观看免费| 亚洲精品国产品国语在线 | 日韩免费电影网站| 婷婷亚洲综合五月天小说| 91精品国产免费网站| 亚洲国产综合在线| 女人张开腿等男人桶免费视频 | 亚洲经典千人经典日产| 国产成人3p视频免费观看| eeuss影院免费直达入口| 亚洲成AV人片在| 成人福利免费视频| 亚洲国产成人久久精品软件| 四虎影院永久免费观看| GOGOGO免费观看国语| 亚洲成人免费电影| 日本免费一本天堂在线| 国产精品美女久久久免费| 久久精品国产亚洲av麻| 嫩草影院在线免费观看| 一级成人生活片免费看| 亚洲视频在线观看不卡| 久久久久久免费一区二区三区 | 亚洲高清免费在线观看| 女人张开腿给人桶免费视频| 国产福利免费视频 | 香蕉视频亚洲一级| 久久精品国产精品亚洲精品| 麻花传媒剧在线mv免费观看| 中文字幕亚洲精品| 国产一级淫片免费播放| 日韩免费无码一区二区三区| 中文字幕亚洲情99在线| 永久免费av无码网站大全|