JS局部通用函數(shù)
發(fā)表時(shí)間:2024-06-09 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]JavaScript在WEB編程中能起到很大的作用,將一些常用的功能寫成JavaScript類庫(kù)。 將下面代碼保存為Common.js 類庫(kù)功能: 1.Trim(str)--去除字符串兩邊的空格 2.XMLEncode(str)--對(duì)字符串進(jìn)行XML編碼 3.ShowLabel(str,str)-...
JavaScript在WEB編程中能起到很大的作用,將一些常用的功能寫成JavaScript類庫(kù)。
將下面代碼保存為Common.js
類庫(kù)功能:
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ù)庫(kù)
包括:
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è)字母
*/
/*
==================================================================
字符串操作
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));
}
[page_break]
/*
================================================================================
XMLEncode(string):對(duì)字符串進(jìn)行XML編碼
================================================================================
*/
function XMLEncode(str)
{
str=Trim(str);
str=str.replace("&","&");
str=str.replace("<","<");
str=str.replace(">",">");
str=str.replace("’","'");
str=str.replace("\"",""");
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;
}
}