博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
工具类脚本代码
阅读量:6371 次
发布时间:2019-06-23

本文共 9972 字,大约阅读时间需要 33 分钟。

/*
 
* 只能为正整数
 
*/
var
regNum0 = /^\d+$/;
 
/*
 
* 邮政编码
 
*/
var
regPostCode0 = /^\d{6}$/;
 
/*
 
* 用户名
 
* 只能是字母数字下划线,并且以字母开头(5-16位)
 
*/
var
regUserName0 = /^[a-zA-Z]\w{4,15}$/;
 
/*
 
* IP地址
 
* 如:192.168.1.102
 
*/
var
regIP0 = /^((([1-9]\d?)|(1\d{2})|(2[0-4]\d)|(25[0-5]))\.){3}(([1-9]\d?)|(1\d{2})|(2[0-4]\d)|(25[0-5]))$/;
 
/*
 
* 只能是中文汉字
 
*/
var
regChineseChar0 = /^[\u4e00-\u9fa5]+$/;
 
/*
 
* 网址
 
* 只允许http、https、ftp这三种
 
* 如:http://www.baidu.com
 
*/
var
regWeb0 = /^(([hH][tT]{2}[pP][sS]?)|([fF][tT][pP]))\:\/\/[wW]{3}\.[\w-]+\.\w{2,4}(\/.*)?$/;
 
/*
 
* 日期格式验证
 
* 因为日期格式比较多,主要验证了以下类型
 
* 2012-05-14、2012/05/6、2012.5.14、20120528
 
*/
var
regDate0 = /^[1-9]\d{3}([-|\/|\.])?((0\d)|([1-9])|(1[0-2]))\1(([0|1|2]\d)|([1-9])|3[0-1])$/;
 
/** 获得系统毫秒数 */
function
now() {
    
return
(
"function"
==
typeof
Date.now) ? Date.now() :
new
Date().valueOf();
}
 
/** 判断是否为空 */
function
isNull(val) {
    
if
(val ===
null
|| val ===
""
) {
        
return
true
;
    
}
    
return
false
;
}
 
function
formatDate(date){
     
}
 
/** 获得带汉字的日期 */
function
getTodayC() {
    
var
d =
new
Date();
    
var
s =
""
;
    
s += d.getFullYear() +
"年"
;
    
s += (d.getMonth() + 1) +
"月"
;
    
s += d.getDate() +
"日"
;
    
s +=
"  星期"
+ dateNumToChinese(d.getDay());
    
return
s;
}
 
/** 获得带英文的日期 */
function
getTodayE(geshi, week) {
    
var
d =
new
Date();
    
var
s =
""
;
    
if
((geshi ==
""
|| geshi ==
"-"
|| geshi ==
null
) && week == 0) {
        
s += d.getFullYear() +
"-"
;
        
s += (d.getMonth() + 1) +
"-"
;
        
s += d.getDate();
    
}
else
if
((geshi ==
""
|| geshi ==
"-"
|| geshi ==
null
) && week == 1) {
        
s += d.getFullYear() +
"-"
;
        
s += (d.getMonth() + 1) +
"-"
;
        
s += d.getDate() +
"  "
;
        
s += dateNumToEn(d.getDay());
    
}
else
if
(geshi ==
"/"
&& week == 1) {
        
s += d.getFullYear() +
"/"
;
        
s += (d.getMonth() + 1) +
"/"
;
        
s += d.getDate() +
"/"
;
        
s += dateNumToEn(d.getDay());
    
}
else
{
        
s =
"error"
;
    
}
 
    
return
s;
}
 
/** 获得带汉字的时间 */
function
getTodayTimeC() {
    
var
d =
new
Date();
    
var
s =
""
;
    
s += d.getHours() +
"时"
;
// 获取当前小时数(0-23)
    
s += d.getMinutes() +
"分"
;
// 获取当前分钟数(0-59)
    
s += d.getSeconds() +
"秒"
;
    
return
s;
}
 
/** 获得英文的时间 */
function
getTodayTimeE(geshi) {
    
var
d =
new
Date();
    
var
s =
""
;
    
if
(geshi ==
""
|| geshi ==
null
|| geshi ==
":"
) {
        
s += d.getHours() +
":"
;
// 获取当前小时数(0-23)
        
s += d.getMinutes() +
":"
;
// 获取当前分钟数(0-59)
        
s += d.getSeconds();
 
    
}
else
if
(geshi ==
"-"
) {
        
s += d.getHours() +
"-"
;
// 获取当前小时数(0-23)
        
s += d.getMinutes() +
"-"
;
// 获取当前分钟数(0-59)
        
s += d.getSeconds();
    
}
else
if
(geshi ==
"/"
) {
        
s += d.getHours() +
"/"
;
// 获取当前小时数(0-23)
        
s += d.getMinutes() +
"/"
;
// 获取当前分钟数(0-59)
        
s += d.getSeconds();
    
}
 
    
return
s;
}
 
/** 转化数字为汉字星期 */
function
dateNumToChinese(num) {
    
if
(num == 1) {
        
return
"一"
;
    
}
else
if
(num == 2) {
        
return
"二"
;
    
}
else
if
(num == 3) {
        
return
"三"
;
    
}
else
if
(num == 4) {
        
return
"四"
;
    
}
else
if
(num == 5) {
        
return
"五"
;
    
}
else
if
(num == 6) {
        
return
"六"
;
    
}
else
if
(num === 0) {
        
return
"日"
;
    
}
else
{
        
return
"error"
;
    
}
}
 
/** 转化数字为英文星期 */
function
dateNumToEn(num) {
    
if
(num == 1) {
        
return
"Mon"
;
    
}
else
if
(num == 2) {
        
return
"Tue"
;
    
}
else
if
(num == 3) {
        
return
"Wed"
;
    
}
else
if
(num == 4) {
        
return
"Thu"
;
    
}
else
if
(num == 5) {
        
return
"Fri"
;
    
}
else
if
(num == 6) {
        
return
"Sat"
;
    
}
else
if
(num === 0) {
        
return
"Sun"
;
    
}
else
{
        
return
"error"
;
    
}
}
//
// | 求两个时间的天数差 日期格式为 YYYY-MM-dd
//
function
daysBetween(DateOne, DateTwo) {
    
var
OneMonth = DateOne.substring(5, DateOne.lastIndexOf(
'-'
));
    
var
OneDay = DateOne
            
.substring(DateOne.length, DateOne.lastIndexOf(
'-'
) + 1);
    
var
OneYear = DateOne.substring(0, DateOne.indexOf(
'-'
));
 
    
var
TwoMonth = DateTwo.substring(5, DateTwo.lastIndexOf(
'-'
));
    
var
TwoDay = DateTwo
            
.substring(DateTwo.length, DateTwo.lastIndexOf(
'-'
) + 1);
    
var
TwoYear = DateTwo.substring(0, DateTwo.indexOf(
'-'
));
 
    
var
cha = ((Date.parse(OneMonth +
'/'
+ OneDay +
'/'
+ OneYear) - Date
            
.parse(TwoMonth +
'/'
+ TwoDay +
'/'
+ TwoYear)) / 86400000);
    
return
Math.abs(cha);
}
 
//
// | 日期合法性验证
// | 格式为:YYYY-MM-DD或YYYY/MM/DD
//
function
IsValidDate(DateStr) {
    
var
sDate = DateStr.replace(/(^\s+|\s+$)/g,
''
);
// 去两边空格;
    
if
(sDate ==
''
)
        
return
true
;
    
// 如果格式满足YYYY-(/)MM-(/)DD或YYYY-(/)M-(/)DD或YYYY-(/)M-(/)D或YYYY-(/)MM-(/)D就替换为''
    
// 数据库中,合法日期可以是:YYYY-MM/DD(2003-3/21),数据库会自动转换为YYYY-MM-DD格式
    
var
s = sDate.replace(
            
/[\d]{ 4,4 }[\-/]{ 1 }[\d]{ 1,2 }[\-/]{ 1 }[\d]{ 1,2 }/g,
''
);
    
if
(s ==
''
)
// 说明格式满足YYYY-MM-DD或YYYY-M-DD或YYYY-M-D或YYYY-MM-D
    
{
        
var
t =
new
Date(sDate.replace(/\-/g,
'/'
));
        
var
ar = sDate.split(/[-/:]/);
        
if
(ar[0] != t.getYear() || ar[1] != t.getMonth() + 1
                
|| ar[2] != t.getDate()) {
            
// alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM/DD。注意闰年。');
            
return
false
;
        
}
    
}
else
{
        
// alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM/DD。注意闰年。');
        
return
false
;
    
}
    
return
true
;
}
 
//
// | 日期时间检查
// | 格式为:YYYY-MM-DD HH:MM:SS
//
function
CheckDateTime(str) {
    
var
reg = /^(\d+)-(\d{ 1,2 })-(\d{ 1,2 }) (\d{ 1,2 }):(\d{ 1,2 }):(\d{ 1,2 })$/;
    
var
r = str.match(reg);
    
if
(r ==
null
)
        
return
false
;
    
r[2] = r[2] - 1;
    
var
d =
new
Date(r[1], r[2], r[3], r[4], r[5], r[6]);
    
if
(d.getFullYear() != r[1])
        
return
false
;
    
if
(d.getMonth() != r[2])
        
return
false
;
    
if
(d.getDate() != r[3])
        
return
false
;
    
if
(d.getHours() != r[4])
        
return
false
;
    
if
(d.getMinutes() != r[5])
        
return
false
;
    
if
(d.getSeconds() != r[6])
        
return
false
;
    
return
true
;
}
 
/** 添加下拉列表 */
// jQUery版
function
addOptions(id, valueArr, contentArr) {
    
// 根据id获取对象
    
var
s = $(
"#"
+ id);
    
// 根据值数据的长度决定
    
var
length = valueArr.length;
    
if
(length < 1) {
        
s.append(
"<option value='"
+ valueArr +
"'>"
+ contentArr +
"</option"
);
    
}
else
{
        
for
(
var
i = 0; i < length; i++) {
            
s.append(
"<option value='"
+ valueArr[i] +
"'>"
+ contentArr[i]
                    
+
"</option>"
);
        
}
    
}
}
/**
 
* 检验table中的输入值是否为空 传入要检验的table的id 若为空则返回相应的行号和列号
 
*/
// jQUery版
function
validTable(id) {
    
// 表
    
var
table1 = $(
"#"
+ id);
    
var
rows = 0;
    
var
result =
""
;
 
    
// 行
    
var
trs = $(
"#"
+ id +
" tr"
).each(
function
() {
        
rows++;
        
var
cols = 0;
        
var
collength = $(
this
).children(
"td"
).length;
        
// alert(collength);
        
// 列
        
var
tds = $(
this
).children(
"td"
);
        
tds.each(
function
() {
            
cols++;
            
var
value1 = $(
this
).children().val();
            
if
(isNull(value1)) {
                
$(
this
).children().focus();
                
result += rows +
","
+ cols +
";"
;
            
}
        
});
    
});
    
return
result;
}
 
   
/**
    
* 去空格
    
* @param str
    
*/
   
function
trim(str){
     
if
(str==
null
||str==
""
)
return
""
;
     
return
str.replace(/^\s+/g,
''
).replace(/\s+$/g,
''
);
   
};
 
 
   
/**
    
* 检验输入的是否是数字
    
* @param keyCode
    
*/
   
function
isNumber(keyCode){
     
//alert(keyCode);
     
if
(((keyCode >= 48 && keyCode <= 57 )&& window.event.shiftKey ==
false
)
      
||(keyCode >= 96 && keyCode <= 105 ))
      
return
true
;
     
return
false
;
   
}

   
function
isCursorCtrl(keyCode){
     
if
(keyCode >= 33 && keyCode <= 40 )
      
return
true
;
     
return
false
;
   
}

   
function
isPlusSign(keyCode){
     
if
(keyCode==187||keyCode==107)
      
return
true
;
     
return
false
;
   
}

   
function
isSubtractionSign(keyCode){
     
if
(keyCode == 109||keyCode == 189)
      
return
true
;
     
return
false
;
   
}
 
   
function
isDotSign(keyCode){
     
if
(keyCode==110 ||keyCode==190)
       
return
true
;
     
return
false
;
   
}
   
/**
    
* 检验是否是tab键
    
* @param keyCode
    
*/
   
function
isTab(keyCode){
     
if
(keyCode==9)
      
return
true
;
     
return
false
;
   
}
   
/**
    
* 检验是否是enter键
    
* @param keyCode
    
*/
   
function
isEnter(keyCode){
     
if
(keyCode==13)
      
return
true
;
     
return
false
;
   
}
   
/**
    
* 检验是否是退格键
    
* @param keyCode
    
*/
   
function
isBackspace(keyCode){
     
if
(keyCode==8)
      
return
true
;
     
return
false
;
   
}
  
/**
   
* 检验是否是delete键
   
*/
  
function
isDelete(keyCode){
     
if
(keyCode==46)
      
return
true
;
     
return
false
;
  
}
 
  
/**
   
* 将enter键转换为tab
   
*/
   
function
enterToTab() {
     
if
(window.event.keyCode==13)
         
window.event.keyCode=9;
   
}
  
/**
   
* 检验是否是数字
   
*/
  
function
isDigitStr(s){
      
var
patrn=/^[0-9]/;
      
if
(!patrn.exec(s))
return
false
;
      
return
true
;
   
};
     
   
/**
    
* 延迟跳转页面
    
* 注意要在页面数据加载完成后才执行此函数,否则开始跳转页面了
    
* @param {Object} url
    
*/
function
delayUrl(url){
        
var
lanrenzhijia = $(
"#time"
).html();
        
alert(1);
        
if
(lanrenzhijia > 0){
            
lanrenzhijia--;
            
document.getElementById(
'time'
).innerHTML = lanrenzhijia;
        
}
else
{
            
window.location.href = url ;
        
}
        
setTimeout(
"delayUrl('"
+ url +
"')"
,1000);
}
 
/**
 
* 延迟跳转
 
*/
function
delayUrl(url,time){
    
if
(time>0){
        
time--;
    
}
else
{
        
window.location.href = url ;
    
}
    
setTimeout(
"delayUrl('"
+ url +
"',"
+time+
")"
,1000);
}
 
/**
 
* 对符合条件的表单进行验证
 
*/
function
valide(){
    
//重复密码校验
    
if
($(
".confirmPass"
).val()!=
null
&&$(
".confirmPass"
).val()!=
""
&&$(
".confirmPass"
).val()!=$(
".password"
)){
        
alert(
"俩次密码不一致"
);
        
$(
".confirmPass"
).focus();
        
return
false
;
    
}
    
//邮箱校验
    
$(
".email"
).each(
function
(){
        
//alert($(this).val());
        
var
reEmail=/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/; 
        
//alert(reEmail.test($(this).val()));
        
if
(!reEmail.test($(
this
).val())){
            
alert(
"邮箱格式不正确"
);
            
$(
this
).focus();
            
return
false
;
        
}
    
});
    
//日期校验
    
$(
".date"
).each(
function
(){
          
        
if
(!RQcheck($(
this
).val())){
            
alert(
"日期格式不正确"
);
            
$(
this
).focus();
            
return
false
;
        
}
    
});
    
//数字校验
    
$(
".num"
).each(
function
(){
         
var
reNum=/^(-?\d+)(\.\d+)?$/;
        
if
(!reNum.test($(
this
).val())){
            
alert(
"数字格式不正确"
);
            
$(
this
).focus();
            
return
false
;
        
}
    
});
    
//手机号
    
$(
".tel"
).each(
function
(){
         
var
reTel=/^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
        
if
(!reTel.test($(
this
).val())){
            
alert(
"手机号格式不正确"
);
            
$(
this
).focus();
            
return
false
;
        
}
    
});
    
//ip地址
    
$(
".IP"
).each(
function
(){
        
var
reIP=/^((([1-9]\d?)|(1\d{2})|(2[0-4]\d)|(25[0-5]))\.){3}(([1-9]\d?)|(1\d{2})|(2[0-4]\d)|(25[0-5]))$/;
        
if
(!reIP.test($(
this
).val())){
            
alert(
"IP地址格式不正确"
);
            
$(
this
).focus();
            
return
false
;
        
}
    
});
      
    
return
true
;
}
 
 
/**
 
* 校验日期
 
*/
function
RQcheck(RQ) {
     
var
date = RQ;
     
var
result = date.match(/^(\d{4})(-|\/)(\d{2})\2(\d{2})$/);
 
     
if
(result ==
null
){
         
return
false
;
     
}
     
var
d =
new
Date(result[1], result[3] - 1, result[4]);
     
return
(d.getFullYear() == result[1] && (d.getMonth() + 1) == result[3] && d.getDate() == result[4]);
}
 
/**
 
* 用于限制只输入数字
 
* 暂时只支持IE,火狐有待开发
 
*/
function
onlyNum(event){
     
var
evt = event ? event : (window.event ?window.event :
null
);
    
// alert(evt.keyCode);
    
if
(!(evt.keyCode==46)&&!(evt.keyCode==8)&&!(evt.keyCode==37)&&!(evt.keyCode==39)&&!(evt.keyCode==190)) {
        
if
(!((evt.keyCode>=48&&evt.keyCode<=57)||(evt.keyCode>=96&&evt.keyCode<=105))) {
            
evt.returnValue=
false
;
//不让非数字显示
             
        
}
    
}
    
//alert(evt.returnValue);
}

转载于:https://www.cnblogs.com/love-is/p/4269942.html

你可能感兴趣的文章
用Struts2框架开发的菜鸟绝对能看得懂的用户登录程序(1)
查看>>
tinyxml读写xml示例代码
查看>>
乌班图的世界——返回上一级目录 和 返回根目录
查看>>
使用 Python 一键配置 SVN 账号和属组信息
查看>>
避免在类里用#ifdef XXX来声明成员
查看>>
Cocos2d-x3.2 碰撞检测--圆形
查看>>
Mac安装gdb
查看>>
vsftp配置
查看>>
windows 2008 hyper-v 下安装centos系统识别不到网卡
查看>>
如何建立一个yum服务器
查看>>
rm删除命令解释及实例
查看>>
动态使用Fragment的方法
查看>>
Java的运行原理
查看>>
解决SecureCRT的vim中为下划线而无高亮问题,附最佳护眼配色方案
查看>>
SQL SERVER 列名修改
查看>>
程序员的八个级别
查看>>
Leetcode 123. Best Time to Buy and Sell Stock III JAVA语言
查看>>
机顶盒介绍
查看>>
NAT网络回流现象解释,内网使用服务器的外网IP登陆
查看>>
Ext Scheduler Web资源甘特图控件
查看>>