var EventUtil = new Object();
/**
添加事件处理函数
*/
EventUtil.addEventHandler = function(oTarget,sEventType,fnHandler){
if(oTarget.addEventListener){// for DOM-compliant browsers
oTarget.addEventListener(sEventType,fnHandler,false);
}else if(oTarget.attachEvent)// for IE
{
oTarget.attachEvent("on" + sEventType,fnHandler);
}else// for all others
{
oTarget["on"+sEventType] = fnHandler;
}
};
/**
删除事件处理函数
*/
EventUtil.removeHandler = function(oTarget,sEventType,fnHandler){
if(oTarget.removeEventListener){
oTarget.removeEventListener(sEventType,fnHandler,false);
}else if(oTarget.detachEvent){
oTarget.detachEvent("on"+sEventType,fnHandler);
}else{
oTarget["on"+sEventType] = null;
}
};
/**
去除字符串头和尾的空白字符
*/
function trim(s)
{
// Remove leading spaces and carriage returns
while ((s.substring(0,1) == ' ') || (s.substring(0,1) == '\n') || (s.substring(0,1) == '\r'))
{
s = s.substring(1,s.length);
}
// Remove trailing spaces and carriage returns
while ((s.substring(s.length-1,s.length) == ' ') || (s.substring(s.length-1,s.length) == '\n') || (s.substring(s.length-1,s.length) == '\r'))
{
s = s.substring(0,s.length-1);
}
return s;
}
/**
To check for valid date in the input box
*/
function handleDateChange(obj) {
var dateRegExp = /^\d{2}\/\d{2}\/\d{4}$/;
var badDateRegExp = /(00)/;
var badYearRegExp = /(0000)/;
var validDate = true;
obj.value = trim(obj.value);
if (!(obj.value == ""))
{
var str = obj.value;
var separator = "/";
var array;
var _month = "";
var _date = "";
var _year = "";
if (dateRegExp.test(obj.value)) //mm/dd/yyyy
{
array = str.split(separator);
_month = array[0];
_date = array[1];
_year = array[2];
if ((badYearRegExp.test(_year)) ||(badDateRegExp.test(_date)) || (badDateRegExp.test(_month)) || _month>12 || _date<1 || _date>31)
{validDate = false;}
var m_date = new Date(_year, _month-1, _date);
var month = m_date.getMonth()+1;
if (!m_date || m_date == "NaN" || (month != _month))
{validDate = false;}
}
else
{
validDate = false;
}
}
return validDate;//returns true if correct date
}
/*
名字: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)--验证是否为浮点数
*/
/*字符串操作
Trim(string):去除字符串两边的空格
*/
/*
1.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;
}
/*
2.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;
}
/*
3.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;
}
}
分享到:
相关推荐
微信小程序md5.js
在"js-utility-main"这个压缩包中,我们可能找到了一个这样的JavaScript实用工具库。 1. **数组处理**: - `arrayEach`: 这个函数可能实现了对数组中的每个元素执行一个回调函数,类似于Array.prototype.forEach。...
在本文中,我们将深入探讨如何使用jQuery来仿制AjaxPro.Utility.RegisterTypeForAjax辅助方法,以简化JavaScript中的Ajax开发。在项目中,特别是涉及到HTML和jQuery的模板字段引擎时,经常需要通过Ajax获取和处理...
object_utility.js 用于多级自动数组和关联数组操作的小型 javascript 库。 在未知或不存在某个数组的某些克隆是否存在的情况下,该库使多级数组的操作更加容易。 例如,您需要为某个多级关联数组的叶子赋值,如下...
- 这个类可能用于在C#中执行JavaScript代码,例如使用`System.Web.Script.Serialization.JavaScriptSerializer`进行JSON序列化和反序列化,或者使用`Microsoft.JScript`来运行JS片段。 3. **Chart图形类**: - ...
github最新版srs-docker源码
Build bullet-proof apps with Testing: Use Vue’s official test utility library, vue-test-utils, to create meaningful tests for a daily weather app that interacts with a third party API.
modulejs是极致模块化的且面向对象的javascript框架,modulejs能让你在简单易用的前提下写出更佳维护性和可重用性的javascript代码。 Features: •HTML document query/traversing/manipulation •Lightweight ...
实用程序 Web开发中使用的日常功能。 用法 下载它并将其包含在您的页面中。 方法 oneOrMore(string, number) 争论 字串号 ...它返回一个字符串。...oneOrMore ( string , number ) => returns string 3 pens of type ...
"crash-utility.github.io" 是一个开源项目,其主要目标是提供一个工具,帮助开发者和用户分析和理解软件崩溃时产生的日志或转储文件。这个项目托管在GitHub上,便于社区协作和版本控制。从提供的信息来看,它很可能...
实用工具 JavaScript缺少的实用程序功能。 受到内置功能的启发PHP RubyPython安装您有很多选择来安装UtilityJS使用NPM $ npm install utilityjs --save使用凉亭$ bower install utilityjs --save使用Git $ git clone...
Utility公共类是软件开发中常见的一种设计模式,用于封装一些通用的功能或方法,提高代码的复用性和可维护性。在.NET框架下,我们可以创建一个名为`Utility`的静态类,将一些常用的操作集中在一起,方便在项目中的多...
在本文中,我们将深入探讨如何在...此外,随着Adobe逐渐停止对Flash的支持,现在可能需要考虑转向HTML5、CSS3和JavaScript等现代Web开发技术。但如果你仍然需要处理现有的Flash项目,这个插件仍然是一个宝贵的工具。
安装时可添加到WINDOWS资源管理器扩展,支持更改文件时间戳,更改文件属性及转换字符,重命名Javascript,支持正则表达式匹配及替换,可在前缀后缀添加字符,支持自动更改日期及编号,附加文件夹名。更改文件属性,...
ArcGIS JavaScript API(简称ArcGIS JS API)是Esri公司提供的一种强大的Web GIS开发工具,允许开发者创建交互式的地图应用程序。本主题将深入探讨如何利用ArcGIS JS API实现两种不同的距离和面积测量方法。 1. **...
<script src="birt/ajax/utility/Calendar.js" type="text/javascript"> 3、修改TextBoxParameterFragment.jsp 在textbox中加入onclick事件 (encodedParameterName.indexOf("Time")>=0) {%> onclick="calendar()" ...
svg2pdf.js 仅JavaScript的SVG到PDF转换实用程序,可利用jsPDF在浏览器中运行。 试用一下:。安装您可以通过npm获取svg2pf.js: npm install svg2pdf.js jspdf --save# oryarn add svg2pdf.js jspdf 从版本2.x开始,...
客户端要求 require() node_modules , js , css , html和json ,与加载jquery一样省力。 (无需构建,编译等)。... var promise_utility = load ( "/path/to/utility.js" ) // loads a custom
angular-seed — AngularJS 应用程序的种子 ... 我们还使用了许多 node.js 工具来初始化和测试 angular-seed。 您必须安装 node.js 及其包管理器 (npm)。 您可以从获取它们。 克隆角种子 使用克隆 angul