隨筆-16  評(píng)論-8  文章-30  trackbacks-0

          JavaScript在WEB編程中能起到很大的作用,將一些常用的功能寫成JavaScript類庫。

          將下面代碼保存為Common.js

          類庫功能:

          1.Trim(str)--去除字符串兩邊的空格

          2.XMLEncode(str)--對(duì)字符串進(jìn)行XML編碼

          3.ShowLabel(str,str)--鼠標(biāo)提示功能(顯示字符,提示字符)

          可以設(shè)置顯示的提示的文字的字體、顏色、大小以及提示的背景顏色、邊框等

          4.IsEmpty(obj)--驗(yàn)證輸入框是否為空

          5.IsInt(objStr,sign,zero)--驗(yàn)證是否為整數(shù),正整數(shù),負(fù)整數(shù),以及是否包括零

          6.IsFloat(objStr,sign,zero)--驗(yàn)證是否為浮點(diǎn)數(shù),正浮點(diǎn),負(fù)浮點(diǎn),以及是否包括零

          7.IsEnLetter(objStr,size)--驗(yàn)證是否為26個(gè)字母,大寫小


          源代碼如下:

          /*

                 名字:Common.js

                 功能:通用JavaScript腳本函數(shù)庫

                 包括:

                               1.Trim(str)--去除字符串兩邊的空格

                               2.XMLEncode(str)--對(duì)字符串進(jìn)行XML編碼

                      3.ShowLabel(str,str)--鼠標(biāo)提示功能(顯示字符,提示字符)

                               4.IsEmpty(obj)--驗(yàn)證輸入框是否為空

                               5.IsInt(objStr,sign,zero)--驗(yàn)證是否為整數(shù)

                               6.IsFloat(objStr,sign,zero)--驗(yàn)證是否為浮點(diǎn)數(shù)

                               7.IsEnLetter(objStr,size)--驗(yàn)證是否為26個(gè)字母

           

              作者:申旺

              日期:2004/04/14

          */

           

          /*

          ==================================================================

          字符串操作

          Trim(string):去除字符串兩邊的空格

          ==================================================================

          */

           

          /*

          ==================================================================

          LTrim(string):去除左邊的空格

          ==================================================================

          */

          function LTrim(str)

          {

              var whitespace = new String(" \t\n\r");

              var s = new String(str);

            

              if (whitespace.indexOf(s.charAt(0)) != -1)

              {

                  var j=0, i = s.length;

                  while (j < i && whitespace.indexOf(s.charAt(j)) != -1)

                  {

                      j++;

                  }

                  s = s.substring(j, i);

              }

              return s;

          }

           

          /*

          ==================================================================

          RTrim(string):去除右邊的空格

          ==================================================================

          */

          function RTrim(str)

          {

              var whitespace = new String(" \t\n\r");

              var s = new String(str);

           

              if (whitespace.indexOf(s.charAt(s.length-1)) != -1)

              {

                  var i = s.length - 1;

                  while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)

                  {

                      i--;

                  }

                  s = s.substring(0, i+1);

              }

              return s;

          }

           

          /*

          ==================================================================

          Trim(string):去除前后空格

          ==================================================================

          */

          function Trim(str)

          {

              return RTrim(LTrim(str));

          }

           

           

           

          /*

          ================================================================================

          XMLEncode(string):對(duì)字符串進(jìn)行XML編碼

          ================================================================================

          */

          function XMLEncode(str)

          {

                 str=Trim(str);

                 str=str.replace("&","&amp;");

                 str=str.replace("<","&lt;");

                 str=str.replace(">","&gt;");

                 str=str.replace("'","&apos;");

                 str=str.replace("\"","&quot;");

                 return str;

          }

           

          /*

          ================================================================================

          驗(yàn)證類函數(shù)

          ================================================================================

          */

           

          function IsEmpty(obj)

          {

              obj=document.getElementsByName(obj).item(0);

              if(Trim(obj.value)=="")

              {

                  alert("字段不能為空。");      

                  if(obj.disabled==false && obj.readOnly==false)

                  {

                      obj.focus();

                  }

              }

          }

           

          /*

          IsInt(string,string,int or string):(測(cè)試字符串,+ or - or empty,empty or 0)

          功能:判斷是否為整數(shù)、正整數(shù)、負(fù)整數(shù)、正整數(shù)+0、負(fù)整數(shù)+0

          */

          function IsInt(objStr,sign,zero)

          {

              var reg;  

              var bolzero;  

            

              if(Trim(objStr)=="")

              {

                  return false;

              }

              else

              {

                  objStr=objStr.toString();

              }  

            

              if((sign==null)||(Trim(sign)==""))

              {

                  sign="+-";

              }

            

              if((zero==null)||(Trim(zero)==""))

              {

                  bolzero=false;

              }

              else

              {

                  zero=zero.toString();

                  if(zero=="0")

                  {

                      bolzero=true;

                  }

                  else

                  {

                      alert("檢查是否包含0參數(shù),只可為(空、0)");

                  }

              }

            

              switch(sign)

              {

                  case "+-":

                      //整數(shù)

                      reg=/(^-?|^\+?)\d+$/;          

                      break;

                  case "+":

                      if(!bolzero)         

                      {

                          //正整數(shù)

                          reg=/^\+?[0-9]*[1-9][0-9]*$/;

                      }

                      else

                      {

                          //正整數(shù)+0

                          //reg=/^\+?\d+$/;

                          reg=/^\+?[0-9]*[0-9][0-9]*$/;

                      }

                      break;

                  case "-":

                      if(!bolzero)

                      {

                          //負(fù)整數(shù)

                          reg=/^-[0-9]*[1-9][0-9]*$/;

                      }

                      else

                      {

                          //負(fù)整數(shù)+0

                          //reg=/^-\d+$/;

                          reg=/^-[0-9]*[0-9][0-9]*$/;

                      }          

                      break;

                  default:

                      alert("檢查符號(hào)參數(shù),只可為(空、+、-)");

                      return false;

                      break;

              }

            

              var r=objStr.match(reg);

              if(r==null)

              {

                  return false;

              }

              else

              {      

                  return true;   

              }

          }

           

          /*

          IsFloat(string,string,int or string):(測(cè)試字符串,+ or - or empty,empty or 0)

          功能:判斷是否為浮點(diǎn)數(shù)、正浮點(diǎn)數(shù)、負(fù)浮點(diǎn)數(shù)、正浮點(diǎn)數(shù)+0、負(fù)浮點(diǎn)數(shù)+0

          */

          function IsFloat(objStr,sign,zero)

          {

              var reg;  

              var bolzero;  

            

              if(Trim(objStr)=="")

              {

                  return false;

              }

              else

              {

                  objStr=objStr.toString();

              }  

            

              if((sign==null)||(Trim(sign)==""))

              {

                  sign="+-";

              }

            

              if((zero==null)||(Trim(zero)==""))

              {

                  bolzero=false;

              }

              else

              {

                  zero=zero.toString();

                  if(zero=="0")

                  {

                      bolzero=true;

                  }

                  else

                  {

                      alert("檢查是否包含0參數(shù),只可為(空、0)");

                  }

              }

            

              switch(sign)

              {

                  case "+-":

                      //浮點(diǎn)數(shù)

                      reg=/^((-?|\+?)\d+)(\.\d+)?$/;

                      break;

                  case "+":

                      if(!bolzero)         

                      {

                          //正浮點(diǎn)數(shù)

                          reg=/^\+?(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/;

                      }

                      else

                      {

                          //正浮點(diǎn)數(shù)+0

                          reg=/^\+?\d+(\.\d+)?$/;

                      }

                      break;

                  case "-":

                      if(!bolzero)

                      {

                          //負(fù)浮點(diǎn)數(shù)

                          reg=/^-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/;

                      }

                      else

                      {

                          //負(fù)浮點(diǎn)數(shù)+0

                          reg=/^((-\d+(\.\d+)?)|(0+(\.0+)?))$/;

                      }          

                      break;

                  default:

                      alert("檢查符號(hào)參數(shù),只可為(空、+、-)");

                      return false;

                      break;

              }

            

              var r=objStr.match(reg);

              if(r==null)

              {

                  return false;

              }

              else

              {      

                  return true;   

              }

          }

           

          posted on 2005-06-11 17:07 楚客 閱讀(228) 評(píng)論(0)  編輯  收藏 所屬分類: HTML
          主站蜘蛛池模板: 长乐市| 沙田区| 金门县| 河东区| 宣化县| 平阴县| 高邑县| 石泉县| 亳州市| 邛崃市| 墨竹工卡县| 互助| 泊头市| 都昌县| 淅川县| 桃江县| 湘潭县| 综艺| 翁牛特旗| 永定县| 肇源县| 贡山| 正宁县| 双牌县| 三门县| 保山市| 泰顺县| 梁河县| 祁门县| 察雅县| 桐乡市| 儋州市| 财经| 东海县| 阳西县| 甘德县| 呼伦贝尔市| 巴青县| 称多县| 贡觉县| 泽库县|