zoukankan
html css js c++ java
JavaScript通用库(转)
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
<
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(
"
'
"
,
"
'
"
);
str
=
str.replace(
"
\
""
,
"
&
quot;
"
);
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+=
"
&
nbsp;
"
+str+
"
&
nbsp;
"
;
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
=
\
"
JavaScript:DoSomeThing(this);\
"
>
"
+ text +
"
</
a
>
"
;
}
else
{
return
"
<
a href
=
\
"
#\
"
onMouseOver
=
\
"
ShowNote('
"
+
note
+
"
')\
"
onMouseOut
=
\
"
HideNote()\
"
>
"
+ text +
"
</
a
>
"
;
}
}
(正则表达式版本)字符串操作函数:
/*********************************************
1. LTrim(str)去除str左边的空白字符(空格,换行,回车)
2. RTrim(str)去除ste右边的空白字符(空格,换行,回车)
3. Trim(str)去除ste两边的空白字符(空格,换行,回车)
*********************************************/
function LTrim(str) {
return str.replace(/^[ \t\n\r]+/g,
""
);
}
function RTrim(str) {
return str.replace(/[ \t\n\r]+$/g,
""
);
}
function Trim(str) {
return RTrim(LTrim(str));
}
JavaScript判断数字
function
cTrim(sInputString,iType)
{
var
sTmpStr
=
' '
var
i
=
-
1
if
(iType
==
0
||
iType
==
1
)
{
while
(sTmpStr
==
' ')
{
++
i
sTmpStr
=
sInputString.substr(i,
1
)
}
sInputString
=
sInputString.substring(i)
}
if
(iType
==
0
||
iType
==
2
)
{
sTmpStr
=
' '
i
=
sInputString.length
while
(sTmpStr
==
' ')
{
--
i
sTmpStr
=
sInputString.substr(i,
1
)
}
sInputString
=
sInputString.substring(
0
,i
+
1
)
}
return
sInputString;
}
if
(isNaN(docform.txtFaultFirstEliminateTimes.value)
==
true
||
cTrim(docform.txtFaultFirstEliminateTimes.value,
0
)
==
""
)
{
alert(
"
只能是数字
"
);
return
;
}
查看全文
相关阅读:
HDU-5818-Joint Stacks
蓝桥杯-2016CC-卡片换位
HDU-2255-奔小康赚大钱(KM算法)
蓝桥杯-PREV31-小朋友排队
crypto.js加密传输
js之对象
LigerUi之ligerMenu 右键菜单
关于js中window.location.href,location.href,parent.location.href,top.location.href的用法
设置js的ctx
AngularJS简单例子
原文地址:https://www.cnblogs.com/ghd258/p/330844.html
最新文章
Apache的工作模式和最大并发请求数设置
496. Next Greater Element I
89. Gray Code
99. Recover Binary Search Tree
前端上传组件Plupload使用指南【转】
JS自动截取字符串长度,添加省略号(……)的实现方法【转】
php 截取取最后一个字符【转】
PHP中替换换行符的几种方法小结【转】
PHP获取指定的时间戳【转】
mysql 时间筛选date_sub的用法【转】
热门文章
解决echarts柱形图X轴标题显示不全的问题【转】
PHP强制转换中(array)和(object)妙用,关联数组与对象快速转换【转】
Echarts条形图顶端设置显示数据【转】
css中一个元素如何在其父元素居中显示【转】
牛客小白月赛13 :部分题目总结
HDU-2157-How many ways??
nowcoder-548C-Tachibana Kanade Loves Review
CF-1144F-Graph Without Long Directed Paths
ZOJ-1167-Trees on the Level
蓝桥杯-PREV45-图形排版
Copyright © 2011-2022 走看看