常用js函数(2)

  * ------------------------------------------------------------
 定义变量
  ------------------------------------------------------------
*/
var  i,j;

/*------------------------------------------------------------
 和当前日期比较,如果当前日期大于输入日期则提示
 end----输入日期
 s----提示信息
 使用例子onClick="compareDate(end,'选择日期不能在今天之前!')" 
  ------------------------------------------------------------
*/

function  compareDate(end,s) {
var a=new Date();
var b=end.value;
if(((Number(a.getYear())-Number(b.substring(0,4)))*356+
       (Number(a.getMonth())
-Number(b.substring(5,7))+1)*31+
    (Number(a.getDate())
-Number(b.substring(8,10))))>0)
 
{
  alert(s);
  end.focus();
 }

}



/*------------------------------------------------------------
 两个时间进行比较,当开始日期大于结束日期则提示
 startDate----开始日期
 endDate------结束日期
 使用例子onClick="compareTwoDate(startDate,endDate,'开始日期不能大于结束日期!')" 
  ------------------------------------------------------------
*/

function  compareTwoDate(startDate,endDate,s)
{
var a=startDate.value;
var b=endDate.value;
if(((Number(a.substring(0,4))-Number(b.substring(0,4)))*356+
       (Number(a.substring(
5,7))-Number(b.substring(5,7)))*31+
    (Number(a.substring(
8,10))-Number(b.substring(8,10))))>0)
 
{
  alert(s);
  startDate.focus();
 }

}


/*------------------------------------------------------------
 判断是否为数字类型,如不是数字类型则提示
 text-------输入文本
 name-------提示的名字
 使用例子onBlur="compareTwoDate(this,'电话号码')" 
  ------------------------------------------------------------
*/

function  isNumber(text,name)
{
  
var temp="0123456789";
   
for(j=0; j<text.value.length; j++ ) 
   
{    
     
var ch = text.value.Trim().charAt(j);
  
if(temp.indexOf(ch)==-1)
  
{
   alert(name
+"应为数字类型!");
   text.focus();
   
return true;
  }
  
   }

}


/*------------------------------------------------------------
 判断两次密码输入是否一致
 text-------新密码
 name-------再次输入新密码
 使用例子checkPassword(form1.newpass,form1.newpass1) 
  ------------------------------------------------------------
*/

function  checkPassword(text,text1)
{
  
var newpass=text.value.Trim();
  
var newpass1=text1.value.Trim();
  
if(newpass!=newpass1){
    alert(
"两次输入新密码不一致!");
    text.focus();
    
return true;
  }

}



/*------------------------------------------------------------
 判断是否包含非法字符,如含非法字符则提示
 text-------输入文本
 addtemp----除英文和数字外还可包含的字符
 name-------提示的名字
 include----提示中不允许包含的字符
 使用例子onBlur="compareTwoDate(this,'@_','邮件','%*$')" 
  ------------------------------------------------------------
*/

function  isChar(text,addtemp,name,include)
{
  
var temp="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"+addtemp;
   
for(j=0; j<text.value.length; j++ ) 
   
{    
     
var ch = text.value.Trim().charAt(j);
  
if(temp.indexOf(ch)==-1)
  
{
   alert(name
+"中不允许包含'"+include+"'等字符!");
   text.focus();
   
break
  }
  
   }

}


/*------------------------------------------------------------
 判断输入的是否为电子邮件,如含非法字符则提示
 text-------输入的电子邮件
 使用例子onBlur="isEmail(this)" 
  ------------------------------------------------------------
*/

function  isEmail(text)
{   
 
var email=text.value.Trim();
 
var m=email.indexOf("@");
 
var n=email.indexOf(".");
 
if(email!="")
 
{
  
if(m<1||m>email.length-3)
  
{
   alert(
"请输入正确的电子邮件格式!");
   text.focus();
   
return true;
  }

  
else if(n<m+2||n>email.length-2)
  
{
   alert(
"请输入正确的电子邮件格式!");
   text.focus();
   
return true;
  }

 }

}

/*------------------------------------------------------------
 判断输入文本是否为身份证号码,如为不正确则提示
 text-------输入的身份证号码
 使用例子onBlur="isPid(this)" 
  ------------------------------------------------------------
*/

function  isPid(text)
{
 
var pid=text.value.Trim();
 
var temp="0123456789";
 
var temp1="0123456789xX";
 
if(pid!=""){
 
if(pid.length==15)
 
{
     
for(j=0; j<15; j++ ) 
     
{    
   
var ch = pid.charAt(j);
   
if(temp.indexOf(ch)==-1)
   
{
    alert(
"请输入正确的身份证号码!");
    text.focus();
    
break
   }

  }
       
 }

 
else if(pid.length==18)
 
{

     
for(j=0; j<pid.length-1; j++ ) 
     
{    
   
var ch = pid.charAt(j);
   
if(temp.indexOf(ch)==-1)
   
{
    alert(
"请输入正确的身份证号码!");
    text.focus();
    
break
   }

  }
       
  
var ch1 = pid.charAt(pid.length-1);
  
if(temp1.indexOf(ch1)==-1)
   
{
    alert(
"请输入正确的身份证号码!");
    text.focus();
   }
    
 }

 
else{
  alert(
"身份证号码的应为15位或18位!");
  text.focus();
 }
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值