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("&","&amp;");

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

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

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

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+="

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封装成类的更多相关文章

  1. Directx11学习笔记【二】 将HelloWin封装成类

    我们把上一个教程的代码封装到一个类中来方便以后的使用. 首先新建一个空工程叫做MyHelloWin,添加一个main.cpp文件,然后新建一个类叫做MyWindow,将于窗体有关的操作封装到里面 My ...

  2. PHP连接数据库:封装成类

    php连接数据库,操作他增删改查等操作,其中要多次连接数据库,每个页面也需要连接数据库,更改数据会及其麻烦: 为了便于数据库的更改,我们可以把固定的那几句话封装成类,这样虽然代码量也差不多,但是有利于 ...

  3. python 日志的配置,python对日志封装成类,日志的调用

    # python 日志的配置,python对日志封装成类,日志的调用 import logging # 使用logging模块: class CLog: # --------------------- ...

  4. PHPEXCEL在thinkphp中封装成类使用

    PHPEXCEL在thinkphp中封装成类使用 标签: phpexcel导出导入thinkphp -- : 435人阅读 评论() 收藏 举报 分类: php() 版权声明:本文为博主原创文章,未经 ...

  5. php使用GD库实现图片水印和缩略图——封装成类

    学完了如何使用GD库来实现对图片的各种处理,那么我们可以发现,不管哪种方法,都有相似之处,如果我们把这些相似的地方和不相似的地方都封装成类,这样就可以提升代码的速度,而且节省了很多时间,废话不多说,来 ...

  6. MOOC(7)- case依赖、读取json配置文件进行多个接口请求-读取json封装成类(13)

    把读取json数据的函数封装成类 # -*- coding: utf-8 -*- # @Time : 2020/2/12 16:44 # @File : do_json_13.py # @Author ...

  7. 将Ajax 中数组转换成字符串 封装成类

    <?php class Ajax{ //ajax调用的方法 //sql是要执行的语句 //$type是SQL语句的类型,0代表增删改,1代表查询 //$db代表要操作的数据 public fun ...

  8. php文件下载(解决文件下载后多几个字节的问题) 与封装成类的例子

    php文件下载比较常见,网上的资料比较多,在此不再强调怎么去实现(因为也是网上看的).下面主要说明的是下载代码的注意点. php下载文件主要是把文件以字节流直接输出,也就是echo fread($fi ...

  9. python 将歌词解析封装成类,要求:提供一个方法(根据时间返回歌词) - 提示:封装两个类:歌词类、歌词管理类

    自己写的 有更好方案的大佬可以讨论一下 import bisectclass Lrc(): def __init__(self, sec, lrc): self.sec = sec self.lrc ...

随机推荐

  1. BZOJ-2324 营救皮卡丘 最小费用可行流+拆下界+Floyd预处理

    准备一周多的期末,各种爆炸,回来后状态下滑巨快...调了一晚上+80%下午 2324: [ZJOI2011]营救皮卡丘 Time Limit: 10 Sec Memory Limit: 256 MB ...

  2. HDU-1754I Hate It 线段树区间最值

    这道题比较基本,就是用线段树维护区间最值,可以算是模板吧-.. I Hate It Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768 ...

  3. 运行 appium 自带实例报错:unresolved import:webdriver

    python demo 中from appium import webdriver报错unresolved import:webdriver 之所以会报这样的error是因为没有装clientclie ...

  4. linux虚拟机系统的复制或克隆后续问题解决!

    前言 加快创建hadoop或spark集群,方法有两种途径:克隆或复制.其实啊,我最近,再返回写下本博文,理清下思路. 比如,你在你的一台电脑里,安装虚拟机.已经搭建好了hadoop或spark集群. ...

  5. unix/linux进程详解

    技术分享 启动新进程 stdlib.hintsystem(const char *string)whichequals to "sh -c string" 替换进程映像unistd ...

  6. UVA294DIvisors(唯一分解定理+约数个数)

    题目链接 题意:输入两个整数L,U(L <= U <= 1000000000, u - l <= 10000),统计区间[L,U]的整数中哪一个的正约数最多,多个输出最小的那个 本来 ...

  7. The Dirichlet Distribution 狄利克雷分布 (PRML 2.2.1)

    The Dirichlet Distribution 狄利克雷分布 (PRML 2.2.1) Dirichlet分布可以看做是分布之上的分布.如何理解这句话,我们可以先举个例子:假设我们有一个骰子,其 ...

  8. 分子量 (Molar Mass,ACM/ICPC Seoul 2007,UVa 1586)

    解题思路: 1.将分子量用double 数组记录下来 2.将字符串存储在字符数组中,从头向后扫描,一直记住“字母”,对下一个字符进行判断,是否是数字,如果是数字:用一个整数记录,本代码中用的sum,同 ...

  9. web后门排查与高效分析web日志技巧

    今年一直大大小小的事情忙,很少有时间能静下心写个文章,所以最近博客更新也越来越少了,公司现在安全团队在我这边,一直在玩命的招人.下个月8号有一个互联网金融的会,4月在qcon北京站,都以嘉宾的身份去分 ...

  10. phpcms v9无法连接数据库服务器,请检查配置

    安装phpcms v9是数据库信息配置正确,但仍提示:无法连接数据库服务器,请检查配置 1.修改install/step5.tpl.php 127行为:'&dbpw='+escape($('# ...