当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 通用javascript脚本函数库 方便开发

Javascript
表格 隔行换色升级版
JavaScript 变量基础知识
fileupload控件 文件类型客户端验证实现代码
extjs DataReader、JsonReader、XmlReader的构造方法
让Firefox支持event对象实现代码
CSS+Js遮罩效果的TAB及焦点图片切换(推荐)
javascript showModalDialog传值与FireFox的window.open 父子窗口传值示例
JQuery 图片延迟加载并等比缩放插件
Jquery作者John Resig自己封装的javascript 常用函数
js 鼠标拖动对象 可让任何div实现拖动效果
页面中js执行顺序
Javascript select下拉框操作常用方法
jQuery 常见学习网站与参考书
javascript currying返回函数的函数
prototype 中文参数乱码解决方案
为javascript添加String.Format方法
asp.net HttpHandler实现图片防盗链
Riot.js 快速的JavaScript单元测试框架
Javascript实现的CSS代码高亮显示
Js 实现表格隔行换色一例

Javascript 中的 通用javascript脚本函数库 方便开发


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 227 ::
收藏到网摘: n/a

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个字母
*/
/*
==================================================================
字符串操作
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):对字符串进行XML编码
======================================================================
*/
function XMLEncode(str)
{
str=Trim(str);
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;
}
}
/*
IsEnLetter(string,string):测试字符串,大小写(UL,U,L or ul,u,l)
*/
function IsEnLetter(objStr,size)
{
var reg;
if(Trim(objStr)=="")
{
return false;
}
else
{
objStr=objStr.toString();
}
if((size==null)||(Trim(size)==""))
{
size="UL";
}
else
{
size=size.toUpperCase();
}
switch(size)
{
case "UL":
//大小写
reg=/^[A-Za-z]+$/;
break;
case "U":
//大写
reg=/^[A-Z]+$/;
break;
case "L":
//小写
reg=/^[a-z]+$/;
break;
default:
alert("检查大小写参数,只可为(空、UL、U、L)");
return false;
break;
}
var r=objStr.match(reg);
if(r==null)
{
return false;
}
else
{
return true;
}
}
/*
=====================================================================
功能:鼠标小提示
作者:申旺
日期:2004/04/15
======================================================================
*/
//定义变量、设置默认值
var LabelFontFace="宋体,arial,Verdana";
var LabelFontColor="#000000";
var LabelFontSize="9pt";
var LabelFontStyle="Font.PLAIN";
var LabelBorderColor="#000000";
var LabelBackColor="#FFFFE1";
//设置各个属性
function SetLabelFontFace(obj)
{
obj=Trim(obj);
if(obj==null || obj=="")
{
obj="宋体,arial,Verdana";
}
LabelFontFace=obj;
}
function SetLabelFontColor(obj)
{
obj=Trim(obj);
if(obj==null || obj=="")
{
obj="#000000";
}
LabelFontColor=obj;
}
function SetLabelFontSize(obj)
{
obj=Trim(obj);
if(obj==null || obj=="")
{
obj="9pt";
}
LabelFontSize=obj;
}
function SetLabelFontStyle(obj)
{
obj=Trim(obj);
if(obj==null || obj=="")
{
obj="Font.PLAIN";
}
LabelFontStyle=obj;
}
function SetLabelBorderColor(obj)
{
obj=Trim(obj);
if(obj==null || obj=="")
{
obj="#000000";
}
LabelBorderColor=obj;
}
function SetLabelBackColor(obj)
{
obj=Trim(obj);
if(obj==null || obj=="")
{
obj="#FFFFE1";
}
LabelBackColor=obj;
}
//合成文字样式
function SetTextStyle(str)
{
var strRet="";
var strStyle="";
strStyle="font-family:"+LabelFontFace+";";
strStyle+="color:"+LabelFontColor+";";
strStyle+="font-size:"+LabelFontSize+";";
switch(LabelFontStyle.toLowerCase())
{
case "font.plain":
strStyle+="font-weight: normal;";
strStyle+="font-style: normal;";
break;
case "font.bold":
strStyle+="font-weight: bold;";
strStyle+="font-style: normal;";
break;
case "font.italic":
strStyle+="font-weight: normal;";
strStyle+="font-style: italic;";
break;
case "font.italicbold":
case "font.bolditalic":
strStyle+="font-weight: bold;";
strStyle+="font-style: italic;";
break;
default:
strStyle+="font-weight: bold;";
strStyle+="font-style: italic;";
break;
}
strRet="<font style='"+strStyle+"'>";
strRet+=" "+str+" ";
strRet+="</font>";
return strRet;
}
//合成表格样式
function SetTableStyle()
{
var strRet="";
strRet+="border-right: "+LabelBorderColor+" 1px solid;";
strRet+="border-top: "+LabelBorderColor+" 1px solid;";
strRet+="border-left: "+LabelBorderColor+" 1px solid;";
strRet+="border-bottom: "+LabelBorderColor+" 1px solid;";
strRet+="background-color:"+LabelBackColor;
return strRet;
}
//显示提示
function ShowNote(str)
{
var strHtml;
strHtml="";
strHtml+="<table height=1px width=1px border='0'cellspacing='0' cellpadding='0' style='" + SetTableStyle() + "'>";
strHtml+="<tr>";
strHtml+="<td>"+SetTextStyle(str)+"</td>";
strHtml+="</tr>";
strHtml+="</table>";
if (document.all&&document.readyState=="complete")
{
document.all.div_Note.innerHTML=strHtml;
document.all.div_Note.style.pixelLeft=event.clientX+document.body.scrollLeft+10
document.all.div_Note.style.pixelTop=event.clientY+document.body.scrollTop+10
document.all.div_Note.style.visibility="visible"
}
}
//隐藏提示
function HideNote()
{
if (document.all)
{
document.all.div_Note.style.visibility="hidden";
}
else
{
if (document.layers)
{
clearInterval(currentscroll)
document.div_Note.visibility="hidden";
}
}
}
//初始化
function Init()
{
window.document.write("<div id=\"div_Note\" style=\"VISIBILITY:hidden; POSITION:absolute; HEIGHT:13px;z-index:1\"></div>");
}
Init();
//生成提示字符
function ShowLabel(text,note,bclick)
{
if(bclick!=null)
{
return "<a href=\"#\" onMouseOver=\"ShowNote('" + note + "')\" onMouseOut=\"HideNote()\" onClick=\"javascriptoSomeThing(this);\">" + text + "</a>";
}
else
{
return "<a href=\"#\" onMouseOver=\"ShowNote('" + note + "')\" onMouseOut=\"HideNote()\">" + text + "</a>";
}
}
测试页面:
复制代码 代码如下:

<HTML>
<HEAD>
<title>Common javascript</title>
<script language="javascript" src="./Common.js"></script>
<script language="javascript">
function CheckInt()
{
iptResult.value=IsInt(iptTest.value,iptSign.value,iptZero.value);
}
function CheckFloat()
{
iptResult.value=IsFloat(iptTest.value,iptSign.value,iptZero.value);
}
function CheckLetter()
{
iptResult.value=IsEnLetter(iptTest.value,iptSign.value);
}
document.write(ShowLabel("TEST","Only a testing!"));
document.write("<br>");
</script>
<meta http-equiv="expires" content="0">
</HEAD>
<body>
<input type=text value="" id="iptTest"><input type=button value="IsEmpty" onclick="IsEmpty('iptTest');">
<input type=button value="CheckInt" onclick="CheckInt()">
<br>
<input type=text value="" id="iptSign" NAME="iptSign"><input type=button value="CheckFloat" onclick="CheckFloat()">
<br>
<input type=text value="" id="iptZero" NAME="iptZero"><input type=button value="CheckLetter" onclick="CheckLetter()">
<br>
<input type=text value="" id=iptResult disabled=true>
</body>
</HTML>