`
阅读更多
// JavaScript Document for public

//一些基本的驗證。2008-12-18 

//去除左右空格
String.prototype.trim = function () {
 return this.replace(/(^\s*)|(\s*$)/g, "");
};
//去左空格
String.prototype.ltrim = function () {
 return this.replace(/(^\s*)/g, "");
};  
//去右空格
String.prototype.rtrim = function () {
 return this.replace(/(\s*$)/g, "");
};

//驗證是否手機號碼
String.prototype.isMobile = function () {
 return (/^(?:13\d|15[89])-?\d{5}(\d{3}|\*{3})/.test(this.Trim()));
};


//驗證是否電話號碼
String.prototype.isTel = function () {
 return (/^(([0\+]\d{2,3}-)?(0\d{2,3})-)(\d{7,8})(-(\d{3,}))?/.test(this.Trim()));
};

//驗證是否郵箱
function isEmail(email) {
 var reg = /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
 return reg.test(email);
}
//驗證是否郵編
function isZip(zip) {
 var reg = /^\d{6}$/;
 return reg.test(zip);
}
//驗證是否數字
function isNumber(num) {
 return !isNaN(num);
}

//驗證是否是整數
function isInteger(str){
var regu = /^[-]{0,1}[0-9]{1,}$/;
return regu.test(str);
}

//驗證是否是正整數
function isPositiveInteger( str ){
 var regu = /^[0-9]{1,}$/;
 return regu.test(str);
}
function check(name) {
            var pattern=/[\/\\\:\*\?\"\<\>\|]/;
            
            if(name.search(pattern)!=-1) {
                alert("invalidate");
                return false;
            }
            return true;
        }
//驗證名稱是否含有非法字符
function isUnlawful(name){
 var reg = /[\/\\\:\*\?\"\<\>\|]/;
 return reg.test(name);
}

//驗證名稱是否含有中文
function isCN(name){
    var fn = get_fileName(name);
 var reg = /^[A-Za-z0-9]+$/;
 return reg.test(fn);
}

/////////////////////////////////////////////////////////////////////////////////表單驗證
//驗證年齡
function checkAge(age) {
 var age = document.getElementById("age").value.trim();
 if (!isNumber(age)) {
  //alert("請輸入正確的年齡,須為數字");
  return false;
 }
 if (age < 5 || age > 200) {
  //alert("年齡須在(5-200)之間");
  return false;
 }
 return true;
}

//驗證郵箱
function checkEmail(email) {
 var email = document.getElementById("email").value.trim();
 if (!isEmail(email)) {
  //alert("請輸入正確的郵箱格式,如:yangshuo@163.com");
  return false;
 }
 return true;
}

//驗證郵編
function checkZip(zip) {
 var zip = document.getElementById("zip").value.trim();
 if (!isZip(zip)) {
  //alert("請輸入正確的郵編,須為6位數字");
  return false;
 }
 return true;
}

//驗證手機號碼
function checkMobile(mobile) {
 var mobile = document.getElementById("mobile").value.trim();
 if (!mobile.isMobile()) {
  alert("\u8acb\u8f38\u5165\u6b63\u78ba\u7684\u624b\u6a5f\u865f\u78bc\uff0c\u9808\u70ba11\u4f4d\u6578\u5b57\uff01");
  return false;
 }
 return true;
}

//驗證電話號碼
function checkTel(tel) {
 var tel = document.getElementById("tel").value.trim();
 if (!tel.isTel()) {
  alert("\u8acb\u8f38\u5165\u6b63\u78ba\u7684\u96fb\u8a71\u865f\u78bc\u683c\u5f0f\uff0c\u5982\uff1a021-8888888");
  return false;
 }
 return true;
}

//驗證身份證號碼 copy
//20080314 ivor add
function chkIDdata(obj){
  var sid = obj.value.trim();
  //alert("chkdata sid : "+sid);
  var alphabet = new Array(36), little = new Array(36);
            var number = new Array(10);
            alphabet[10] = 'A'; little[10] = 'a';
            alphabet[11] = 'B'; little[11] = 'b';
            alphabet[12] = 'C'; little[12] = 'c';
            alphabet[13] = 'D'; little[13] = 'd';
            alphabet[14] = 'E'; little[14] = 'e';
            alphabet[15] = 'F'; little[15] = 'f';
            alphabet[16] = 'G'; little[16] = 'g';
            alphabet[17] = 'H'; little[17] = 'h';
            alphabet[18] = 'J'; little[18] = 'j';
            alphabet[19] = 'K'; little[19] = 'k';
            alphabet[20] = 'L'; little[20] = 'l';
            alphabet[21] = 'M'; little[21] = 'm';
            alphabet[22] = 'N'; little[22] = 'n';
            alphabet[23] = 'P'; little[23] = 'p';
            alphabet[24] = 'Q'; little[24] = 'q';
            alphabet[25] = 'R'; little[25] = 'r';
            alphabet[26] = 'S'; little[26] = 's';
            alphabet[27] = 'T'; little[27] = 't';
            alphabet[28] = 'U'; little[28] = 'u';
            alphabet[29] = 'V'; little[29] = 'v';
            alphabet[32] = 'W'; little[32] = 'w';
            alphabet[30] = 'X'; little[30] = 'x';
            alphabet[31] = 'Y'; little[31] = 'y';
            alphabet[33] = 'Z'; little[33] = 'z';
            alphabet[34] = 'I'; little[34] = 'i';
            alphabet[35] = 'O'; little[35] = 'o';
            number[0] = '0';    number[1] = '1';
            number[2] = '2';    number[3] = '3';
            number[4] = '4';    number[5] = '5';
            number[6] = '6';    number[7] = '7';
            number[8] = '8';    number[9] = '9';
    //alert("sid.charCodeAt(0) : "+sid.charCodeAt(0));       
   /* */
   
   if(sid.charCodeAt(0) < 65 || sid.charCodeAt(0)> 90)
    {
    alert("您身份證號碼第一位數字輸入的不是大寫英文字")
    return(false)
    }
    

    if(sid.charCodeAt(1)<48 || sid.charCodeAt(1)>50)

    {
    alert("您輸入的第二碼不是1或2")
     return(false)

    }
 for(j=2; j<10; j++)
    if(sid.charCodeAt(j)<48 || sid.charCodeAt(j)>58){
    alert("你輸入的2~9不是數字")
      return(false)
    }
 
 if(sid.charAt(9)=="")     
  {
    alert("請輸入完整身份證號碼共10位數字")
      return(false)
    }
  
  var s=sid.substring(0,1);
     for(i=10; i<=alphabet.length; i++)
       if(s==alphabet[i])       
         s=i         
      c=s.toString()
     
  
   a1=c.substr(0,1)
   a2=c.substr(1,1)

  y=parseInt(a1)+parseInt(a2*9)+parseInt(sid.charAt(1)*8)+parseInt(sid.charAt(2)*7)+parseInt(sid.charAt(3)*6)+parseInt(sid.charAt(4)*5)+parseInt(sid.charAt(5)*4)+parseInt(sid.charAt(6)*3)+parseInt(sid.charAt(7)*2)+parseInt(sid.charAt(8)*1)
     
       mod=y%10  
         
  if((10-mod) == parseInt(sid.charAt(9))){
        //alert("恭喜您輸入身份證號碼正確") 
        return true;
        }    
   else if(mod==0 && parseInt(sid.charAt(9))==0){
               //    alert("恭喜您輸入身份證號碼正確")
               return true;
               }
           else{
               alert("您輸入的身分證號碼不正確");
               return false;
           }

}

 
//選擇復選框
function checkSelect(formObj, eleName) {
 var checked = false;
 for (var i = 0; i < formObj.elements.length; i++) {
  if ((formObj.elements[i].name == eleName) && (formObj.elements[i].checked)) {
   checked = true;
   break;
  }
 }
 if (!checked) {
  alert("請選擇要刪除的紀錄!");
 }
 return checked;
}

function checkSelectNoAlert(formObj, eleName) {
 var checked = false;
 for (var i = 0; i < formObj.elements.length; i++) {
  if ((formObj.elements[i].name == eleName) && (formObj.elements[i].checked)) {
   checked = true;
   break;
  }
 }
 return checked; 
}

 //全選或取消選擇復選框
function selectOrNotAll(formObj, eleName, selectOrNotSelect) {
 for (var i = 0; i < formObj.elements.length; i++) {
  if (formObj.elements[i].name == eleName) {
   formObj.elements[i].checked = selectOrNotSelect;
  }
 }
}

//反選復選框
function reverseSelect(formObj, eleName) {
 for (var i = 0; i < formObj.elements.length; i++) {
  if (formObj.elements[i].name == eleName) {
   formObj.elements[i].checked = !formObj.elements[i].checked;
  }
 }
}

//獲取文件副檔名
function get_ext(f_path) {
 var ext = "";
 if (f_path != null && f_path.trim().length > 0) {
  f_path = f_path.toLowerCase().trim();
  ext = f_path.substring(f_path.lastIndexOf(".") + 1, f_path.length);
 }
 return ext;
}

//獲取文件名稱
function get_fileName(f_path){
    var fn = "";
    if(f_path != null && f_path.trim().length > 0){
  //var i = f_path.lastIndexOf("\\"); //返回文件名稱最后出現'\'的索引
     //var j = f_path.lastIndexOf("."); //返回文件名稱最后出現'.'的索引
     fn = f_path.substring(f_path.lastIndexOf("\\")+1,f_path.lastIndexOf(".")); //取得文件名稱
    }
    return fn;
}

//獲取文件名稱+副檔名
function get_fileNameAndExt(f_path){
 var name="";
 if(f_path!=null && f_path.trim().length>0){
  var f = f_path.lastIndexOf("/");
  name=f_path.substring(f+1,f_path.length);
 }
 return name;
}

/*
驗證文件副檔名
f_path 文件名 ,  accept_ext 副檔名數組
*/
function chk_ext(f_path, accept_ext){
    var ext = get_ext(f_path);
    //根據需求定制
 //var accept_ext = new Array("png", "jpeg", "jpg", "gif");
 var flag = false;
 if (ext != "") {
  for (var i = 0; i < accept_ext.length; i++) {
   if (ext == accept_ext[i]) {
    flag = true;
   }
  }
 }
 return flag;
}

//驗證圖片文件副檔名
function chk_ext_img(f_path) {
 var ext = get_ext(f_path);
    //根據需求定制
 var accept_ext = new Array("png", "jpeg", "jpg", "gif");
 var flag = false;
 if (ext != "") {
  for (var i = 0; i < accept_ext.length; i++) {
   if (ext == accept_ext[i]) {
    flag = true;
   }
  }
 }
 return flag;
}

//驗證圖片文件副檔名 jpg,gif
function chk_ext_imgJG(f_path) {
 var ext = get_ext(f_path);
    //根據需求定制
 var accept_ext = new Array("jpg", "gif");
 var flag = false;
 if (ext != "") {
  for (var i = 0; i < accept_ext.length; i++) {
   if (ext == accept_ext[i]) {
    flag = true;
   }
  }
 }
 return flag;
}
//驗證zip文件副檔名
function chk_ext_zip(f_path) {
 var ext = get_ext(f_path);
    //根據需求定制
 var accept_ext = new Array("zip");
 var flag = false;
 if (ext != "") {
  for (var i = 0; i < accept_ext.length; i++) {
   if (ext == accept_ext[i]) {
    flag = true;
   }
  }
 }
 return flag;
}

//驗證flv文件副檔名
function chk_ext_flv(f_path) {
 var ext = get_ext(f_path);
    //根據需求定制
 var accept_ext = new Array("flv");
 var flag = false;
 if (ext != "") {
  for (var i = 0; i < accept_ext.length; i++) {
   if (ext == accept_ext[i]) {
    flag = true;
   }
  }
 }
 return flag;
}


//驗證其他文件副檔名
function chk_ext_file(f_path) {
 var ext = get_ext(f_path);
    //根據需求定制
 var accept_ext = new Array("doc", "ppt", "xsl", "rar", "pdf");
 var flag = false;
 if (ext != "") {
  for (var i = 0; i < accept_ext.length; i++) {
   if (ext == accept_ext[i]) {
    flag = true;
   }
  }
 }
 return flag;
}

//XuShaoWei驗證其他文件檔名為CVS格式
function chk_ext_filepath(f_path) {
 var ext = get_ext(f_path);
    //根據需求定制
 var accept_ext = new Array("csv");
 var flag = false;
 if (ext != "") {
  for (var i = 0; i < accept_ext.length; i++) {
   if (ext == accept_ext[i]) {
    flag = true;
   }
  }
 }
 return flag;
}

//驗證瀏覽器
function checkBrowser() {
 if (window.navigator.userAgent.indexOf("MSIE") >= 1) {
  return "IE";
 } else {
  if (window.navigator.userAgent.indexOf("Firefox") >= 1) {
   return "FF";
  } else {
   return "other";
  }
 }
}

//驗證瀏覽器是IE6,還是IE7
function checkIE(){
    var b_v = navigator.appVersion; 
    var IE6 = b_v.search(/MSIE 6/i) != -1; 
    var IE7 = b_v.search(/MSIE 7/i) != -1; 
    if(IE6){
        return "IE6";
    }else if(IE7){
        return "IE7";
    }else{
        return "other";
    }
}


/* 
用途:字元1是否以字串2開始 
輸入:str1:字串;str2:被包含的字串 
返回:如果通過驗證返回true,否則返回false

*/
function isFirstMatch(str1, str2) {
 var index = str1.indexOf(str2);
 if (index == 0) {
  return true;
 }
 return false;
}

//調整圖片寬度
function changeImgWidth(obj, lastWidth){
     if(obj.width>lastWidth) obj.width=lastWidth;
}

//驗證是否由字母或數字組成
function isLetterOrNum(value){
 var reg =/^[A-Za-z0-9]+$/;
 return reg.test(value);
}

//驗證是否由6位字母或數字組成
function idOrPassword(value){
 var reg =/^[A-Za-z0-9]{6,10}$/;
 return reg.test(value);
}
// 驗證表單字段值是否為空
function isFieldEmpty(obj, msg) {
 if (obj.value.trim() == "") {
  alert(msg);
  try {
   obj.focus();
  } catch(e) {}
  return true;
 }
 return false;
}
// 字段是否超長
function isFieldLengthExceed(obj, maxlength, msg) {
 if (obj.value.trim() > maxlength) {
  alert(msg);
  try {
   obj.focus();
  } catch(e) {}
  return true;
 }
 return false;
}
//判斷上傳圖片名是否為字母、數字、-和_
// 參數:physicalPath 文件物理路徑
// 參數:fillIn 是否為填
function checkADAndUnderline(physicalPath,fillIn){
    var pic = physicalPath;
    //表達式
    var reg=/^(\w|-)+$/;
    var allowedSuffix = new Array("jpg","jpeg","gif");
    
    if(fillIn){
     if(pic == ""){
            alert("必須選擇上傳圖片!");
            return false;
        }
    }
    if(pic != ""){
        var startIndex = pic.lastIndexOf('\\') + 1;
        var endIndex = pic.lastIndexOf(".");
     var fileName = pic.substring(startIndex, endIndex);
         if(!reg.test(fileName)){
             alert("上傳的圖片名只能包涵字母、數字、-和_!");
             return false;
         }
         var suffix = pic.substring(endIndex+1, pic.length).toLowerCase();
         if((suffix != allowedSuffix[0]) && (suffix != allowedSuffix[1]) && (suffix != allowedSuffix[2])){
            alert("只允許上傳jpg,jpeg,gif后綴的文件!");
            return false;
         }else{
          return true;
         }
    }else{
      return true;
    }
}

//驗證是否由英文、數字、-、_組成
function isLetterNumHyphen(value){
 var reg =/^[A-Za-z0-9-_]+$/;
 return reg.test(value);
}

// 移除內容為空白的子元素
function clearBlank(obj) {
 var nodes = obj.childNodes;
 for( var i = 0;i < nodes.length; i++){
  var node = nodes[i];
  if (node.nodeType == 3) {
   node.parentNode.removeChild(node);
  }
 }
}

function isUrl(url) {
 return url.indexOf("http://") == 0;
}

//窗口最大化
function windowInit(){
   width=screen.availWidth; 
   height=screen.availHeight; 
   window.moveTo(0,0); 
   window.resizeTo(width,height);
} 

 

0
0
分享到:
评论
1 楼 pxx199248 2012-03-29  
收藏楼,不错

相关推荐

    常用javascript验证功能

    下面我们将深入探讨"常用javascript验证功能",包括取keycode大全、日期格式化及验证以及数字格式验证。 1. Keycode大全: Keycode是键盘按键的唯一标识符,JavaScript可以捕获并处理这些按键事件。通过监听键盘...

    开发常用JS验证整合

    常用JS验证,手机号码验证,邮箱验证,数字验证等。常用JS验证效果

    非常实用的常用js验证

    ### 非常实用的常用JS验证 #### 概述 在Web开发中,前端验证是确保用户输入数据有效性的关键步骤之一。JavaScript作为一种广泛使用的客户端脚本语言,提供了多种方法来实现这些验证功能。本文将详细介绍一组常用的...

    常用JS验证以及对数值操作非常全

    常用JS验证以及对数值操作非常全,欢迎下载很实用

    js 常用验证 JavaScript 常用验证

    网址:http://www.web-tag.net/all_22.htm 或者下载CHM 格式文档

    常用js验证,正则表达式代码

    是开发人员常用到的验证!包括电话号码、手机号、身份证

    js常用注册验证

    根据提供的文件信息,我们可以了解到这段内容主要涉及到JavaScript(简称JS)在用户注册验证中的应用。在实际开发过程中,为了确保用户输入的有效性和安全性,开发者通常会利用JS进行前端验证。以下将详细介绍这些...

    常用js验证

    本文将深入探讨一些常用的JavaScript验证技术及其基本语法。 1. 输出语句:`document.write("")` 用于在网页上输出指定的内容,但不推荐在页面加载后使用,因为它会清除整个页面。 2. 注释:JS的单行注释以`//`...

    js表单验证实例,HTML文件,javascript常用表单验证

    js表单验证实例,HTML文件,javascript常用表单验证: 账号、密码、身份证等

    常用正则表达式集锦 js常用正则验证

    ### 常用正则表达式集锦及应用场景 #### 1. 只能输入数字:“^[0-9]*$” - **含义**: 匹配任何由数字组成的字符串。 - **应用场景**: 适用于需要用户输入纯数字的情况,例如年龄、价格等。 #### 2. 只能输入n位的...

    javascript常用语句 js简单验证 js

    6. **正则表达式验证**:尽管在示例代码中没有直接使用正则表达式,但在实际的JavaScript验证中,正则表达式是非常重要的工具,用于检查字符串是否符合特定模式,如验证邮箱、电话号码等格式。 7. **事件处理程序**...

    常用的js验证 身份证 汉字 数字 电话号码

    总的来说,JavaScript验证技术在前端开发中起着至关重要的作用,帮助我们确保用户提交的数据有效且安全。通过对身份证、汉字、数字和电话号码的验证,我们可以构建更健壮、更安全的应用程序,提供更好的用户体验。

    常用表单数据验证JS

    2. **JavaScript验证**: - **事件监听**:通常使用`onsubmit`事件来触发表单验证,在表单提交时执行验证函数。 - **DOM操作**:通过`document.getElementById`、`querySelector`等获取表单元素,然后读取或修改其...

    常用js正则表达式验证

    ### 常用JS正则表达式验证 在前端开发中,正则表达式的使用非常广泛,尤其是在数据验证方面。本文将详细介绍一个包含多种验证功能的正则表达式集合,这些表达式主要用于验证身份、电话号码、证件号码等信息。 ####...

    javascript常用正则验证

    常用正则验证,各种常用验证包含,汉字、手机号、电话号码、email、金额、特殊字符等常见完整js类库。

    常用的Javascript验证函数总结

    常用的Javascript验证函数总结 验证方法大全

    js常用的验证提示(javascript)

    根据提供的文件信息,我们可以总结出一系列与JavaScript验证相关的知识点,主要涵盖了常见的表单验证方法、字符限制、格式检查等实用技巧。以下是对这些知识点的详细解释: ### 1. 验证是否选择了单选按钮 在提供...

    用户注册验证 js常用的验证代码

    用户注册验证常用的js代码用户注册验证常用的js代码用户注册验证常用的js代码用户注册验证常用的js代码用户注册验证常用的js代码用户注册验证常用的js代码

    常用的JS验证和函数汇总

    总结来说,本文所列出的JavaScript验证和函数汇总,对于前端开发人员在处理数值和验证输入时提供了有价值的工具,不仅减少了重复编写验证代码的工作量,还确保了数据处理的准确性,提高开发效率和代码质量。...

Global site tag (gtag.js) - Google Analytics