JavaScript通用庫(一)

________________________________________

http://www.yuzi.net   2006-5-13 16:30:34  

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

將下面代碼保存為Common.js

類庫功能:

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

2.XMLEncode(str)--對字串進行XML編碼

3.ShowLabel(str,str)--滑鼠提示功能(顯示字元,提示字元)

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

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

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

6.IsFloat(objStr,sign,zero)--驗證是否為浮點數,正浮點,負浮點,以及是否包括零

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

源代碼如下:

/*

名字:Common.js

功能:通用JavaScript腳本函數庫

包括:

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

2.XMLEncode(str)--對字串進行XML編碼

3.ShowLabel(str,str)--滑鼠提示功能(顯示字元,提示字元)

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

5.IsInt(objStr,sign,zero)--驗證是否為整數

6.IsFloat(objStr,sign,zero)--驗證是否為浮點數

7.IsEnLetter(objStr,size)--驗證是否為26個字母

作者:申旺

日期: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
{

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):對字串進行XML編碼

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

*/

function XMLEncode(str)

{

str=Trim(str);

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

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

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

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

return str;

}

/*

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

驗證類函數

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

*/

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):(測試字串,+ or - or empty,empty or 0)

功能:判斷是否為整數、正整數、負整數、正整數+0、負整數+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參數,只可為(空、0)");

}

}

switch(sign)

{

case "+-":

//整數

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

break;

case "+":

if(!bolzero)

{

//正整數

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

}

else

{

//正整數+0

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

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

}

break;

case "-":

if(!bolzero)

{

//負整數

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

}

else

{

//負整數+0

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

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

}

break;

default:

alert("檢查符號參數,只可為(空、+、-)");

return false;

break;

}

var r=objStr.match(reg);

if(r==null)

{

return false;

}

else

{

return true;

}

}

/*

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

功能:判斷是否為浮點數、正浮點數、負浮點數、正浮點數+0、負浮點數+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參數,只可為(空、0)");

}

}

switch(sign)

{

case "+-":

//浮點數

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

break;

case "+":

if(!bolzero)

{

//正浮點數

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

}

else

{

//正浮點數+0

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

}

break;

case "-":

if(!bolzero)

{

//負浮點數

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

}

else

{

//負浮點數+0

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

}

break;

default:

alert("檢查符號參數,只可為(空、+、-)");

return false;

break;

}

var r=objStr.match(reg);

if(r==null)

{

return false;

}

else

{

return true;

}

}




arrow
arrow
    全站熱搜
    創作者介紹
    創作者 killworm737 的頭像
    killworm737

    紀錄些小事情

    killworm737 發表在 痞客邦 留言(0) 人氣()