📄 util.js
字号:
/*************************************************************************
Rem PROGRAM (P) Vst Software Corporation
Rem Program: utl.js
Rem System: 工伤管理信息系统
Rem Descripton: 创建程序用JAVASCRIPT
Rem
Rem
Rem Modification History:
Rem ----------------------------------------------------------------------
Rem Date By Remarks/Reason
Rem ----------------------------------------------------------------------
Rem 2003.10.29 BaiHaifei Created
Rem
Rem Global Variables:
Rem <variable>
Rem <description>
Rem Usage:
Rem utl.js
Rem
Rem
Rem Count: 1
Rem *********************************************************************/
/**************************************************************************
1 给String 类型添加trim方法 trim() 入口参数
2 判断EMAIL的格式 IsEmail(str) 入口参数为str
3 判断输入的日期的格式 check_date(intime,format) 入口参数为日期和日期格式 例: 2001.1.1 或 2002-02-02 或check_date("2002-02","y")
return: 错误信息文本。若返回"",则intime合法
4 判断月份的年份数目是否正确
5 判断月份的数目是否正确
6 判断日期的数目是否正确
7 判断输入全部是数字 check_number(num) 参数类型:String
8 判断输入为len1或len2长度的数字串 check_number_length(num,len1,len2) 参数类型:String,int,int
9 判断长度小于len1的数字串 check_number_maxlength(num,len1) 参数类型:String,int
10 判断输入浮点数串 check_number_point(num,x,y) 参数:num为String,x为小数点前位数,y为小数点后位数
11 判断年的数目是否正确 check_year (year) 参数类型:int
12 判断输入的字符串是否为空 check_item_null(num) 参数类型:String
13.判断输入串全部是字母 check_c(str)
14. 检查身份证号 _checkSfzh(sfzh) 自带打印错误,若身份证为空,返回0;其他的不合法情况返回负值;如果合法返回1;
15. 检查申请表编号 _checkSqbbh(sqbbh) 若申请表编号为空,返回0;其他的不合法情况返回负值;如果合法返回1;
16. 检查认定编号 _checkRdbh(rdbh) 若认定编号项目为空,返回0;其他的不合法情况返回负值;如果合法返回1;
17. 检查工伤证号 _checkGszh(gszh) 若工伤证号为空,返回0;其他的不合法情况返回负值;如果合法返回1;
18. 比较起始日期的合法性:start<=end ? checkStartEndDate(startRQ, endRQ)
返回:如果两个日期有""的,返回0;如果第一个日期格式不合法,返回-1;
如果第二个日期格式不合法,返回-2;如果第一个日期大于第二个日期,返回-3;
如果第一个日期小于或者等于第二个日期,返回1;
19. 得到当前日期 格式:yyyy.mm.dd
20. 求两个日期相差的天数:endRQ - startRQ。 输入参数格式:yyyy.mm.dd 或 yyyy.m.d
**************************************************************************/
/**************************
1 给String 类型添加trim方法
截掉首尾的空格
***************************/
/*String.prototype.trim = function()
{
return this.replace(/(^\s*)|(\s*$)/g, "");
}*/
function trim(theData)
{
var checkStr = theData;
if (checkStr==null)
return ;
if (checkStr=="")
return "";
var theStrLength=0;
while (checkStr.charAt(0)==" ")
checkStr=checkStr.substring(1,checkStr.length);
theStrLength=checkStr.length;
while (checkStr.charAt(theStrLength-1)==" ")
{
checkStr=checkStr.substring(0,checkStr.length-1);
theStrLength=checkStr.length
}
return checkStr;
}
/**************************
2 判断输入的数据是否符合email的规范
***************************/
function IsEmail(str)
{
var email = str;
var flag = 0 ;
for (i=0;i<email.length;i++){
n = email.substr(i,1);
if (n == "@"){
if (i==0){
return false;
}else{
if (flag==0){
flag++;
}
}
}else{
if (n=="."){
if (flag>0){
flag++;
}
}
}
}
if (flag>1){
return false;
}else{
return true;
}
}
/**************************
3 判断输入的日期的格式
***************************/
function check_date(intime,format)
{
var ret ="";
var date = intime;
var str = "";
var year = "";
var month = "";
var day = "";
var msg = "";
var pattern;
if ((format.toUpperCase() != "Y")&&(format.toUpperCase() !="M")&&(format.toUpperCase() != "D"))
{
return("输入参数错误!");
}
if (format.toUpperCase() =="D")
{
pattern = /[1-2][0-9][0-9][0-9][^0-9][0-1]{0,1}[0-9][^0-9][0-3]{0,1}[0-9]/;
}
else if (format.toUpperCase() == "M")
{
pattern =/[1-2][0-9][0-9][0-9][^0-9][0-1]{0,1}[0-9]/;
}
else if (format.toUpperCase() == "Y")
{
pattern =/[1-2][0-9][0-9][0-9]/;
}
if (pattern.test(date)){
str = date;
year = parseInt(str,10);
if (isNaN(str.charAt(4)))
{
str = str.substr(5);
}
month = parseInt(str,10);
if (isNaN(str.charAt(2)))
{
str = str.substr(3);
}
else
{
str = str.substr(2);
}
day = parseInt(str,10);
}
else{
return ("日期格式不对!");
}
if(check_number(year) == '1')
return ("日期格式不对!");
if(check_number(month) == '1')
return ("日期格式不对!");
if(check_number(day) == '1')
return ("日期格式不对!");
if (format.toUpperCase() =="D")
{
ret = check_year(year);
if (ret!=""){return ret ;}
ret = check_month(month);
if (ret!=""){return ret ;}
ret = check_day(year,month,day);
if (ret!=""){return ret ;}
}
else if (format.toUpperCase() == "M")
{
ret = check_year(year);
if (ret!=""){return ret ;}
ret = check_month(month);
if (ret!=""){return ret ;}
}
else if (format.toUpperCase() == "Y")
{
ret = check_year(year);
if (ret!=""){return ret ;}
}
//附加:日期以“.”分割:
var strs = intime.split(".");
if(check_number(strs[0]) == '1')
return ("日期格式不对!");
if(check_number(strs[1]) == '1')
return ("日期格式不对!");
if(check_number(strs[2]) == '1')
return ("日期格式不对!");
return "";
}
/**************************
4 判断月份的年份数目是否正确
***************************/
function check_year(inyear)
{
if (isNaN(inyear)){
return ("年份必须为数字!");
}else{
if ((inyear<1900)||(inyear>3000)){
return("输入年份超出有效范围!");
}
}
return "" ;
}
/**************************
5 判断月份的数目是否正确
***************************/
function check_month(inmonth)
{
if (isNaN(inmonth)){
return("月份必须为数字!");
}
else
{
if ((inmonth > 12)||(inmonth<1))
{
return("输入月份超出有效范围!");
}
}
return "" ;
}
/**************************
6 判断日期的数目是否正确
***************************/
function check_day( inyear, inmonth, inday )
{
if (isNaN(inday)){
return("日期必须为数字!");
}
else
{
if ((inday < 1) || (inday > 31))
{
return("每月最多只有31天!");
}
else if (( inmonth==4) || (inmonth==6) || (inmonth==9) || (inmonth==11) )
{
if (inday > 30)
{
return("小月只有30天!");
}
}
else if( inmonth==2 )
{
if ((( inyear % 100 ) != 0 && (inyear % 4) == 0) || (( inyear % 100 ) == 0 && ( inyear % 400) == 0 ))
{
if ( inday > 29 )
{
return("润年2月只有29天!");
}
}
else
{
if ( inday > 28 )
{
return("平年2月只有28天!");
}
}
}
}
return "";
}
/**************************
7.判断输入串全部是数字
***************************/
function check_number(num)
{
for(i=0;i<num.length;i++)
{
var a=num.substr(i,1);
if (a<'0' || a>'9')
return('1');
}
return('0');
}
/********************************
8.判断输入为len1或len2长度的数字串
*********************************/
function check_number_length(num,len1,len2)
{
if(num.length==len1||num.length==len2)
return(check_number(num));
else return('2');
}
/**************************
9.判断长度小于len1的数字串
***************************/
function check_number_maxlength(num,len1)
{
if(num.length<=len1)
return(check_number(num));
else return('2');
}
/**********************
10.判断输入浮点数串
***********************/
function check_number_point(num,x,y)
{
var num1="";
var num2="";
var flag=0;
var m=0+x;
var n=0+y;
var chk1,chk2;
flag=num.indexOf('.',0);
if(flag==-1) flag=num.length;
num1=num.substring(0,flag);
chk1=check_number_maxlength(num1,m);
if(flag<num.length)
{
num2=num.substring(++flag,num.length);
chk2=check_number_maxlength(num2,n);
if(chk2!='0')
return(chk2);
}
if(chk1!='0')
return(chk1);
return('0');
}
/**************************
11.判断输入的字符串是否为空
***************************/
function check_item_null(num)
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -