posts - 0, comments - 77, trackbacks - 0, articles - 356
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          JAVASCRIPT校驗大全

          Posted on 2008-11-03 14:28 semovy 閱讀(460) 評論(0)  編輯  收藏 所屬分類: JavaScript
          技巧
          JAVASCRIPT校驗大全
          <!--
          ///////////////////////////////////////////////////////////////////////////////
          //
          // 張樹林 - 慧佳工作室
          //
          // Module Name:     public.js
          // Abstract:        各種校驗程序
          // Version:         1.0
          // Date                                2005-06-11
          // Author:          woods·zhang
          // Email:           hoojar@163.com 
          // MSN:             hoojar@hotmail.com
          // Website:         http://www.hoojar.com/
          // Copyright 2001-2006, Hoojar studio All Rights Reserved
          //
          // 版權 2001-2006,慧佳工作室所有版權保護

          //The software for free software, allowing use, copy, 
          //modify and distribute the software and files. Any 
          //use of this software must place a copy of all the 
          //above copyright notice. By the software Huijia studio 
          //maintenance, if you have any queries please contact us.
          //Thank you. 
          //
          //此軟件為自由軟件,允許使用、拷貝、修改、分發本軟件及其文檔。
          //任何使用此軟件的地方都得出現以上版權通告所有副本。此軟件由
          //慧佳工作室維護,如果您有什么疑問請與我們聯系。謝謝使用。
          //
          ///////////////////////////////////////////////////////////////////////////////
          var IsFireFox = document.getElementById &&! document.all;//判斷是否為FireFox

          //頁面里回車到下一控件的焦點
          function Enter2Tab(e)
          {
                  try
                  {
                          var ob = IsFireFox ? e.target : event.srcElement;
                          if(ob.tagName == "INPUT" &&
                          (
                          ob.type == "text"     ||
                          ob.type == "password" ||
                          ob.type == "checkbox" ||
                          ob.type == "radio"
                          )   ||
                          ob.tagName == "SELECT")
                          {
                                  var key = IsFireFox ? e.which : event.keyCode;
                                  if (key == 13)
                                  {
                                          if (IsFireFox)
                                          {
                                                  event.which = 9;
                                          }
                                          else
                                          {
                                                  event.keyCode = 9;
                                          }
                                  }
                          }
                  }
                  catch(E){}
          }
          //打開此功能請取消下行注釋
          //document.onkeydown = Enter2Tab;

          //ajax對象創建
          function AjaxLib()
          {
                  var objXMLHttp;
                  if (window.XMLHttpRequest)
                  {
                          objXMLHttp = new XMLHttpRequest();
                  }
                  else
                  {
                          //使用該代碼,出現問題 var MSXML = [’MSXML2.XMLHTTP.5.0’, ’MSXML2.XMLHTTP.4.0’, ’MSXML2.XMLHTTP.3.0’, ’MSXML2.XMLHTTP’, ’Microsoft.XMLHTTP’];
                          var MSXML = [’MSXML2.XMLHTTP’, ’Microsoft.XMLHTTP’];
                          for(var n = 0; n < MSXML.length; n ++)
                          {
                                  try
                                  {
                                          objXMLHttp = new ActiveXObject(MSXML[n]);        
                                          break;
                                  }
                                  catch(e)
                                  {
                                  }
                          }
                          if (!objXMLHttp && typeof XMLHttpRequest != ’undefined’) 
                          {
                                  objXMLHttp = new XMLHttpRequest();
                          }
                  }
                  return objXMLHttp;
          }

          //判斷用戶名是否符合標準
          function UserNameIsOk(ssn)
          {
                  var re = /^[0-9a-z][w-.]*[0-9a-z]$/i;
                  return re.test(ssn) ? true : false;
          }

          //_______全選擇__________
          function SelectAll()
          {
              var empty;
                  var f = document.forms[0];
              for (var i = 0; i < f.length; i++)
              {
                  empty = f[i];
                  if (empty.type == "checkbox" && empty.disabled == false)
                      empty.checked = true;
              }
          }

          //__________返選擇_________
          function SelectReverse()
          {
              var empty;
                  var f = document.forms[0];
              for (var i = 0; i < f.length; i++)
              {
                  empty = f[i];
                  if (empty.type == "checkbox" && empty.disabled == false)
                          if(empty.checked == true)
                          {
                             empty.checked = false;
                          }
                          else
                          {
                             empty.checked = true;
                          }
              }
          }

          //提交查詢內容 submit search find content
          function GoPage(pn)
          {
                  try
                  {
                          document.forms[0].page.value = pn;
                          document.forms[0].submit();
                  }
                  catch(E)
                  {
                          document.forms[1].page.value = pn;
                          document.forms[1].submit();
                  }
          }

          function WoodsAlert(ob, tip)
          {
                  alert(tip);
                  //ob.value = "";
                  ob.focus();
          }

          //__________處理特殊字符________________
          function invalid_keyword()
          {
              var keyword = new Array("<", ">", "%", "’", """);
              var f, ob;
              for (var form = 0; form < document.forms.length; form++)
              {
                  f = document.forms[form];
                  for (var i = 0; i < f.length; i++)
                  {
                      ob = f[i];
                      if (ob.type == "text" && ob.disabled == false)
                      {
                         for (j = 0; j < keyword.length; j++)
                         {
                              if (ob.value.indexOf(keyword[j]) != -1)
                              {
                                  alert("在輸入框聚焦處發現非法字符[" + keyword[j] + "]。");
                                  //ob.value = "";
                                  ob.focus();
                                  return false;
                              }
                         }
                         ob.value = Trim(ob.value);
                      }
                  }
              }
              return true;
          }
          function IsTime(str)
          //__________判斷是否為時間字符串________________________
          {
                  var a = str.match(/^(d{1,2})(:)?(d{1,2})2(d{1,2})$/);
                  if (a == null) {alert(’輸入的參數不是時間格式’); return false;}
                  if (a[1]>24 || a[3]>60 || a[4]>60)
                  {
                    return false
                  }
                  return true;
          }

          function IsDate(str)
          //_________是否為日期(YYYY-MM-DD)類型字符串_________________________
          {
                  var r = str.match(/^(d{1,4})(-|/)(d{1,2})2(d{1,2})$/);
                  if (r == null) return false;
                  var d = new Date(r[1], r[3]-1, r[4]);
                  return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
          }

          function IsBigCurrentDate(str)
          //_________________判斷用戶給出的日期是否大于當前日期______________________________
          {
                  var today = new Date();
                  var tY = String(today.getFullYear());
                  var tM = String(today.getMonth() + 1);
                  (tM.length <= 1) ? tM = "0" + tM : tM = tM;

                  var tD = String(today.getDate());
                  (tD.length <= 1) ? tD = "0" + tD : tD = tD;

                  var tH = String(today.getHours());
                  (tH.length <= 1) ? tH = "0" + tH : tH = tH;

                  var tM1 = String(today.getMinutes());
                  (tM1.length <= 1) ? tM1 = "0" + tM1 : tM1 = tM1;

                  var tdate = tY + "-" + tM + "-" + tD + " " + tH + ":" + tM1 + ":59";//zhuweisong 添加秒的叛斷
                  if (str > tdate)
                  {
                          return true;
                  }
                  else
                  {
                          return false;
                  }
          }

          function IsDateTime(str)
          //____________是否為時間日期類型__________________________________
          {
                  var reg = /^(d{1,4})(-|/)(d{1,2})2(d{1,2}) (d{1,2}):(d{1,2}):(d{1,2})$/;
                  var r = str.match(reg);
                  if (r == null) return false;
                  var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);
                  return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);
          }

          function IsEmail(mail)
          //_____________判斷是否是有效的EMAIL地址________________________________
          {
                  return(new RegExp(/^w+((-w+)|(.w+))*@[A-Za-z0-9]+((.|-)[A-Za-z0-9]+)*.[A-Za-z0-9]+$/).test(mail));
          }

          function IsIp(s)
          //________________判斷是否為有效IP地址_________________________________
          {
                  var check = function(v)
                  {
                          try
                          {
                                  return (v <= 255 && v >= 0);
                          }
                          catch(x)
                          {
                                  return false;
                          }
                  }
                  var re = s.split(".")
                  return (re.length==4)?(check(re[0]) && check(re[1]) && check(re[2]) && check(re[3])):false
          }


          //_________判斷輸入的是否為漢字___________begin__________
          function isCharsInBag (s, bag)
          {
                  var i,c;
                  for (i = 0; i < s.length; i++)
                  {
                          c = s.charAt(i);//字符串s中的字符
                          if (bag.indexOf(c) > -1)
                          return c;
                  }
                  return "";
          }

          function IsCn(s)
          {
                  var errorChar;
                  var badChar = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789><,[]{}?/+=|’":;~!#$%()`";
                  errorChar = isCharsInBag(s, badChar)
                  if (errorChar != "" )
                  {
                          return false;
                  }
                  return true;
          }
          //_________判斷輸入的是否為漢字___________end__________

          //________函數功能:判斷輸入的字符串是不是英文__________begin___________
          function isCharsInBagEn (s, bag)
          {
                  var i,c;
                  for (i = 0; i < s.length; i++)
                  {
                          c = s.charAt(i);//字符串s中的字符
                          if (bag.indexOf(c) <0)
                          return c;
                  }
                  return "";
          }

          function IsEn(s)
          {
                  var errorChar;
                  var badChar = " ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
                  errorChar = isCharsInBagEn(s, badChar)
                  return (errorChar != "" ) ? false : true;
          }
          //________函數功能:判斷輸入的字符串是不是英文__________end___________

          /**//********************
          函數名稱:IsTelephone
          函數功能:固話,手機號碼檢查函數,合法返回true,反之,返回false
          函數參數:obj,待檢查的號碼
          檢查規則:
            (1)電話號碼由數字、"("、")"和"-"構成
            (2)電話號碼為3到8位
            (3)如果電話號碼中包含有區號,那么區號為三位或四位
            (4)區號用"("、")"或"-"和其他部分隔開
            (5)移動電話號碼為11或12位,如果為12位,那么第一位為0
            (6)11位移動電話號碼的第一位和第二位為"13"
            (7)12位移動電話號碼的第二位和第三位為"13"
          ********************/
          function IsTelephone(obj)
          {
                  var pattern=/(^([0+]d{2,3})d{3,4}-d{3,8}$)|(^([0+]d{2,3})d{3,4}d{3,8}$)|(^([0+]d{2,3}){0,1}13d{9}$)|(^d{3,4}d{3,8}$)|(^d{3,4}-d{3,8}$)/;
                  return (pattern.test(obj)) ? true : false;
          }

          /**//********************
          函數名稱:IsLegality
          函數功能:檢查字符串的合法性,即是否包含" ’字符,包含則返回false;反之返回true
          函數參數:obj,需要檢測的字符串
          ********************/
          function IsLegality(obj)
          {
                  var intCount1 = obj.indexOf(""",0);
                  var intCount2 = obj.indexOf("’",0);
                  return (intCount1 > 0 || intCount2 > 0) ? false : true;
          }

          /**//********************
          函數名稱:IsNumber
          函數功能:檢測字符串是否全為數字
          函數參數:str,需要檢測的字符串
          ********************/
          function IsNumber(str)
          {
                  var number_chars = "1234567890";
                  var i;
                  for (i = 0; i < str.length; i++)
                  {
                          if (number_chars.indexOf(str.charAt(i))==-1) return false;
                  }
                  return true;
          }

          /**//********************
          函數名稱:Trim
          函數功能:去除字符串兩邊的空格
          函數參數:str,需要處理的字符串
          ********************/
          function Trim(str)
          {
                  return str.replace(/(^s*)|(s*$)/g, "");
          }

          /**//********************
          函數名稱:LTrim
          函數功能:去除左邊的空格
          函數參數:str,需要處理的字符串
          ********************/
          function LTrim(str)
          {
                  return str.replace(/(^s*)/g, "");
          }

          /**//********************
          函數名稱:RTrim
          函數功能:去除右邊的空格
          函數參數:str,需要處理的字符串
          ********************/
          function RTrim(str)
          {
                  return this.replace(/(s*$)/g, "");
          }

          /**//********************
          函數名稱:IsNull
          函數功能:判斷給定字符串是否為空
          函數參數:str,需要處理的字符串
          ********************/
          function IsNull(str)
          {
                  return (Trim(str) == "") ? false : true;
          }

          //獲取cookie
          function getCookie(name)
          {
                  var search = name + "="
                  if(document.cookie.length > 0)
                  {
                          offset = document.cookie.indexOf(search)
                          if(offset != -1)
                          {
                                  offset += search.length
                                  end = document.cookie.indexOf(";", offset)
                                  if(end == -1) end = document.cookie.length
                                  return unescape(document.cookie.substring(offset, end))
                          }
                          else return "";
                  }
          }

          //存儲cookie
          function setCookie(name, value, days)
          {
                  if (days)
                  {
                          var date = new Date();
                          date.setTime(date.getTime() + (days*24*60*60*1000));
                          var expires = ";expires=" + date.toGMTString();
                  }
                  else var expires = "";
                  document.cookie = name + "=" + value + expires + ";path=/;domain=" + document.location.hostname;
          }

          function eventFalse()
          {
                  window.event.returnValue = false;
          }

          //document.oncontextmenu = eventFalse;
          //document.onselectstart = eventFalse;
          //-->
          主站蜘蛛池模板: 宁波市| 新野县| 牟定县| 陕西省| 桐柏县| 濉溪县| 乌审旗| 礼泉县| 乌拉特前旗| 塔河县| 盐池县| 珲春市| 鹿邑县| 道孚县| 洛川县| 来宾市| 商丘市| 伊川县| 东辽县| 出国| 尖扎县| 崇阳县| 英吉沙县| 海原县| 冷水江市| 凌海市| 博白县| 大城县| 四川省| 招远市| 治多县| 凌海市| 石首市| 承德市| 福鼎市| 四会市| 开江县| 托克逊县| 长白| 大同市| 晋城|