javascript 常用代码大全(九)

 

// 13

/* 
=========================================== 
//无模式提示对话框 
=========================================== 
*/ 
function modelessAlert(Msg) 

   window.showModelessDialog("javascript:alert(/""+escape(Msg)+"/");window.close();","","status:no;resizable:no;help:no;dialogHeight:height:30px;dialogHeight:40px;"); 

 
/* 
=========================================== 
//页面里回车到下一控件的焦点 
=========================================== 
*/ 
function Enter2Tab() 

var e = document.activeElement; 
if(e.tagName == "INPUT" && 

e.type == "text"     || 
e.type == "password" || 
e.type == "checkbox" || 
e.type == "radio" 
)   || 
e.tagName == "SELECT") 

if(window.event.keyCode == 13) 

    window.event.keyCode = 9; 



打开此功能请取消下行注释 
//document.onkeydown = Enter2Tab; 

function ViewSource(url) 

window.location = ’view-source:’+ url; 

///禁止右键 
document.oncontextmenu = function() { return false;} 
 

/* 
****************************************** 
字符串函数扩充 
****************************************** 
*/ 
/* 
=========================================== 
//去除左边的空格 
=========================================== 
*/ 
String.prototype.LTrim = function() 

return this.replace(/(^/s*)/g, ""); 

String.prototype.Mid = function(start,len) 

if(isNaN(start)&&start<0) 

return ""; 

if(isNaN(len)&&len<0) 

return ""; 

return this.substring(start,len); 

/* 
=========================================== 
//去除右边的空格 
=========================================== 
*/ 
String.prototype.Rtrim = function() 

return this.replace(/(/s*$)/g, ""); 

 
/* 
=========================================== 
//去除前后空格 
=========================================== 
*/ 
String.prototype.Trim = function() 

return this.replace(/(^/s*)|(/s*$)/g, ""); 

/* 
=========================================== 
//得到左边的字符串 
=========================================== 
*/ 
String.prototype.Left = function(len) 

if(isNaN(len)||len==null) 

len = this.length; 

else 

if(parseInt(len)<0||parseInt(len)>this.length) 

len = this.length; 


return this.substring(0,len); 

/* 
=========================================== 
//得到右边的字符串 
=========================================== 
*/ 
String.prototype.Right = function(len) 

if(isNaN(len)||len==null) 

len = this.length; 

else 

if(parseInt(len)<0||parseInt(len)>this.length) 

len = this.length; 


return this.substring(this.length-len,this.length); 

/* 
=========================================== 
//得到中间的字符串,注意从0开始 
=========================================== 
*/ 
String.prototype.Mid = function(start,len) 

if(isNaN(start)||start==null) 

start = 0; 

else 

if(parseInt(start)<0) 

start = 0; 


if(isNaN(len)||len==null) 

len = this.length; 

else 

if(parseInt(len)<0) 

len = this.length; 


return this.substring(start,start+len); 

/* 
=========================================== 
//在字符串里查找另一字符串:位置从0开始 
=========================================== 
*/ 
String.prototype.InStr = function(str) 

if(str==null) 

str = ""; 

return this.indexOf(str); 

/* 
=========================================== 
//在字符串里反向查找另一字符串:位置0开始 
=========================================== 
*/ 
String.prototype.InStrRev = function(str) 

if(str==null) 

str = ""; 

return this.lastIndexOf(str); 

 
/* 
=========================================== 
//计算字符串打印长度 
=========================================== 
*/ 
String.prototype.LengthW = function() 

return this.replace(/[^/x00-/xff]/g,"**").length; 

/* 
=========================================== 
//是否是正确的IP地址 
=========================================== 
*/ 
String.prototype.isIP = function() 

var reSpaceCheck = /^(/d+)/.(/d+)/.(/d+)/.(/d+)$/; 
if (reSpaceCheck.test(this)) 

this.match(reSpaceCheck); 
if (RegExp.$1 <= 255 && RegExp.$1 >= 0 
 && RegExp.$2 <= 255 && RegExp.$2 >= 0 
 && RegExp.$3 <= 255 && RegExp.$3 >= 0 
 && RegExp.$4 <= 255 && RegExp.$4 >= 0) 

return true;     

else 

return false; 


else 

return false; 

   

 


/* 
=========================================== 
//是否是正确的长日期 
=========================================== 
*/ 
String.prototype.isDate = function() 

var r = str.match(/^(/d{1,4})(-|//)(/d{1,2})/2(/d{1,2}) (/d{1,2}):(/d{1,2}):(/d{1,2})$/); 
if(r==null) 

return false; 

var d = new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]); 
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]); 

/* 
=========================================== 
//是否是手机 
=========================================== 
*/ 
String.prototype.isMobile = function() 

return /^0{0,1}13[0-9]{9}$/.test(this); 

/* 
=========================================== 
//是否是邮件 
=========================================== 
*/ 
String.prototype.isEmail = function() 

return /^/w+((-/w+)|(/./w+))*/@[A-Za-z0-9]+((/.|-)[A-Za-z0-9]+)*/.[A-Za-z0-9]+$/.test(this); 

/* 
=========================================== 
//是否是邮编(中国) 
=========================================== 
*/ 
String.prototype.isZipCode = function() 

return /^[//d]{6}$/.test(this); 

/* 
=========================================== 
//是否是有汉字 
=========================================== 
*/ 
String.prototype.existChinese = function() 

//[/u4E00-/u9FA5]為漢字﹐[/uFE30-/uFFA0]為全角符號 
return /^[/x00-/xff]*$/.test(this); 

/* 
=========================================== 
//是否是合法的文件名/目录名 
=========================================== 
*/ 
String.prototype.isFileName = function() 

return !/[/*/?/|:"<>]/g.test(this); 

/* 
=========================================== 
//是否是有效链接 
=========================================== 
*/ 
String.Prototype.isUrl = function() 

return /^http:([/w-]+/.)+[/w-]+(/[/w-./?%&=]*)?$/.test(this); 

/* 
=========================================== 
//是否是有效的身份证(中国) 
=========================================== 
*/ 
String.prototype.isIDCard = function() 

var iSum=0; 
var info=""; 
var sId = this; 
var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"}; 
if(!/^/d{17}(/d|x)$/i.test(sId)) 

return false; 

sId=sId.replace(/x$/i,"a"); 
//非法地区 
if(aCity[parseInt(sId.substr(0,2))]==null) 

return false; 

var sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2)); 
var d=new Date(sBirthday.replace(/-/g,"/")) 
//非法生日 
if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate())) 

return false; 

for(var i = 17;i>=0;i--) 

iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11); 

if(iSum%11!=1) 

return false; 

return true; 

/* 
=========================================== 
//是否是有效的电话号码(中国) 
=========================================== 
*/ 
String.prototype.isPhoneCall = function() 

return /(^[0-9]{3,4}/-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^/([0-9]{3,4}/)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/.test(this); 

/* 
=========================================== 
//是否是数字 
=========================================== 
*/ 
String.prototype.isNumeric = function(flag) 

//验证是否是数字 
if(isNaN(this)) 

return false; 

switch(flag) 

case null://数字 
case "": 
return true; 
case "+"://正数 
return/(^/+?|^/d?)/d*/.?/d+$/.test(this); 
case "-"://负数 
return/^-/d*/.?/d+$/.test(this); 
case "i"://整数 
return/(^-?|^/+?|/d)/d+$/.test(this); 
case "+i"://正整数 
return/(^/d+$)|(^/+?/d+$)/.test(this); 
case "-i"://负整数 
return/^[-]/d+$/.test(this); 
case "f"://浮点数 
return/(^-?|^/+?|^/d?)/d*/./d+$/.test(this); 
case "+f"://正浮点数 
return/(^/+?|^/d?)/d*/./d+$/.test(this); 
case "-f"://负浮点数 
return/^[-]/d*/./d$/.test(this); 
default://缺省 
return true; 

/* 
=========================================== 
//转换成全角 
=========================================== 
*/ 
String.prototype.toCase = function() 

var tmp = ""; 
for(var i=0;i<this.length;i++) 

if(this.charCodeAt(i)>0&&this.charCodeAt(i)<255) 

tmp += String.fromCharCode(this.charCodeAt(i)+65248); 

else 

tmp += String.fromCharCode(this.charCodeAt(i)); 


return tmp 

/* 
=========================================== 
//对字符串进行Html编码 
=========================================== 
*/ 
String.prototype.toHtmlEncode = function 

var str = this; 
str=str.replace("&","&amp;"); 
str=str.replace("<","&lt;"); 
str=str.replace(">","&gt;"); 
str=str.replace("’","&apos;"); 
str=str.replace("/"","&quot;"); 
return str; 


qqdao(青青岛) 
  
  
  精心整理的输入判断js函数 
关键词:字符串判断,字符串处理,字串判断,字串处理 

//’********************************************************* 
// ’ Purpose: 判断输入是否为整数字 
// ’ Inputs:   String 
// ’ Returns:  True, False 
//’********************************************************* 
function onlynumber(str) 

    var i,strlength,tempchar; 
    str=CStr(str); 
   if(str=="") return false; 
    strlength=str.length; 
    for(i=0;i<strlength;i++) 
    { 
        tempchar=str.substring(i,i+1); 
        if(!(tempchar==0||tempchar==1||tempchar==2||tempchar==3||tempchar==4||
tempchar==5||tempchar==6||tempchar==7||tempchar==8||tempchar==9)) 
        { 
        alert("只能输入数字 "); 
        return false; 
        } 
    } 
    return true; 

//’********************************************************* 

//’********************************************************* 
// ’ Purpose: 判断输入是否为数值(包括小数点) 
// ’ Inputs:   String 
// ’ Returns:  True, False 
//’********************************************************* 
function IsFloat(str) 
{ var tmp; 
   var temp; 
   var i; 
   tmp =str; 
if(str=="") return false;  
for(i=0;i<tmp.length;i++) 
{temp=tmp.substring(i,i+1); 
if((temp>=’0’&& temp<=’9’)||(temp==’.’)){} //check input in 0-9 and ’.’ 
else   { return false;} 

return true; 

 
//’********************************************************* 
// ’ Purpose: 判断输入是否为电话号码 
// ’ Inputs:   String 
// ’ Returns:  True, False 
//’********************************************************* 
function isphonenumber(str) 

   var i,strlengh,tempchar; 
   str=CStr(str); 
   if(str=="") return false; 
   strlength=str.length; 
   for(i=0;i<strlength;i++) 
   { 
        tempchar=str.substring(i,i+1); 
        if(!(tempchar==0||tempchar==1||tempchar==2||tempchar==3||tempchar==4||
tempchar==5||tempchar==6||tempchar==7||tempchar==8||tempchar==9||tempchar==’-’)) 
        { 
        alert("电话号码只能输入数字和中划线 "); 
        return(false); 
        }    
   } 
   return(true); 

//’********************************************************* 
//’********************************************************* 
// ’ Purpose: 判断输入是否为Email 
// ’ Inputs:   String 
// ’ Returns:  True, False 
//’********************************************************* 
function isemail(str) 

    var bflag=true 
        
    if (str.indexOf("’")!=-1) { 
        bflag=false 
    } 
    if (str.indexOf("@")==-1) { 
        bflag=false 
    } 
    else if(str.charAt(0)=="@"){ 
            bflag=false 
    } 
    return bflag 

//’********************************************************* 
// ’ Purpose: 判断输入是否含有为中文 
// ’ Inputs:   String 
// ’ Returns:  True, False 
//’********************************************************* 
function IsChinese(str)  

if(escape(str).indexOf("%u")!=-1) 
  { 
    return true; 
  } 
    return false; 

//’********************************************************* 

//’********************************************************* 
// ’ Purpose: 判断输入是否含有空格 
// ’ Inputs:   String 
// ’ Returns:  True, False 
//’********************************************************* 
function checkblank(str) 

var strlength; 
var k; 
var ch; 
strlength=str.length; 
for(k=0;k<=strlength;k++) 
  { 
     ch=str.substring(k,k+1); 
     if(ch==" ") 
      { 
      alert("对不起 不能输入空格 ");  
      return false; 
      } 
  } 
return true; 

//’********************************************************* 
 
                                        
//’********************************************************* 
// ’ Purpose: 去掉Str两边空格 
// ’ Inputs:   Str 
// ’ Returns:  去掉两边空格的Str 
//’********************************************************* 
function trim(str) 

    var i,strlength,t,chartemp,returnstr; 
    str=CStr(str); 
    strlength=str.length; 
    t=str; 
    for(i=0;i<strlength;i++) 
    { 
        chartemp=str.substring(i,i+1);    
        if(chartemp==" ") 
        { 
            t=str.substring(i+1,strlength); 
        } 
        else 
        { 
               break; 
        } 
    } 
    returnstr=t; 
    strlength=t.length; 
    for(i=strlength;i>=0;i--) 
    { 
        chartemp=t.substring(i,i-1); 
        if(chartemp==" ") 
        { 
            returnstr=t.substring(i-1,0); 
        } 
        else 
        { 
            break; 
        } 
    } 
    return (returnstr); 

//’********************************************************* 

//’********************************************************* 
// ’ Purpose: 将数值类型转化为String 
// ’ Inputs:   int 
// ’ Returns:  String 
//’********************************************************* 
function CStr(inp) 

    return(""+inp+""); 

//’********************************************************* 

//’********************************************************* 
// ’ Purpose: 去除不合法字符,   ’ " < > 
// ’ Inputs:   String 
// ’ Returns:  String 
//’********************************************************* 
function Rep(str) 
{var str1; 
str1=str; 
str1=replace(str1,"’","`",1,0); 
str1=replace(str1,’"’,"`",1,0); 
str1=replace(str1,"<","(",1,0); 
str1=replace(str1,">",")",1,0); 
return str1; 

//’********************************************************* 
//’********************************************************* 
// ’ Purpose: 替代字符 
// ’ Inputs:   目标String,欲替代的字符,替代成为字符串,大小写是否敏感,是否整字代替 
// ’ Returns:  String 
//’********************************************************* 
function replace(target,oldTerm,newTerm,caseSens,wordOnly) 
{ var wk ; 
  var ind = 0; 
  var next = 0; 
  wk=CStr(target); 
  if (!caseSens) 
   { 
      oldTerm = oldTerm.toLowerCase();    
      wk = target.toLowerCase(); 
    } 
  while ((ind = wk.indexOf(oldTerm,next)) >= 0) 
  {  
         if (wordOnly)  
              { 
                  var before = ind - 1;     
                var after = ind + oldTerm.length; 
                  if (!(space(wk.charAt(before)) && space(wk.charAt(after)))) 
                    { 
                      next = ind + oldTerm.length;     
                       continue;      
                   } 
          } 
     target = target.substring(0,ind) + newTerm + target.substring(ind+oldTerm.length,target.length); 
     wk = wk.substring(0,ind) + newTerm + wk.substring(ind+oldTerm.length,wk.length); 
     next = ind + newTerm.length;    
     if (next >= wk.length) { break; } 
  } 
  return target; 

//’********************************************************* 
  


几个判断,并强制设置焦点: 
//+------------------------------------ 
// trim     去除字符串两端的空格 
String.prototype.trim=function(){return this.replace(/(^/s*)|(/s*$)/g,"")} 
//------------------------------------- 
// avoidDeadLock 避免设置焦点死循环问题 
// 起死原因:以文本框为例,当一个文本框的输入不符合条件时,这时,鼠标点击另一个文本框,触发第一个文本框的离开事件 
//   ,产生设置焦点动作。现在产生了第二个文本框的离开事件,因此也要设置第二个文本框的焦点,造成死锁。 
// 解决方案:设置一个全局对象[key],记录当前触发事件的对象,若其符合条件,则释放该key;若其仍不符合,则key还是指 
//   向该对象,别的对象触发不到设置焦点的语句。 

// 文本框控制函数 
// 

var g_Obj = null;// 记住旧的控件 
// hintFlag参数:0表示没有被别的函数调用,因此出现提示;1表示被调用,不出现警告信息 
// focusFlag参数:指示是否要设置其焦点,分情况:0表示有的可为空;1表示有的不为空 
// 避免死锁的公共部分 
//+------------------------------------ 
function textCom(obj, hintFlag) 

if (g_Obj == null) 
g_Obj=event.srcElement; 
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj)) 

g_Obj = null; 
return; 

g_Obj.value = g_Obj.value.trim(); 

//------------------------------------- 
// 文本框不为空 
//+------------------------------------ 
function TBNotNull(obj, hintFlag) 

if (g_Obj == null) 
g_Obj=event.srcElement; 
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj)) 

g_Obj = null; 
return; 

g_Obj.value = g_Obj.value.trim(); 
if (g_Obj.value == "") 

if (hintFlag == 0) 

g_Obj.focus(); 
alert("内容不能为空!"); 

return false; 

else 
g_Obj = null; 
return true; 

//------------------------------------- 
// 输入内容为数字 
//+------------------------------------ 
function LetNumber(obj, hintFlag, focusFlag) 

if (g_Obj == null) 
g_Obj=event.srcElement; 
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj)) 

g_Obj = null; 
return; 

g_Obj.value = g_Obj.value.trim(); 
if ((g_Obj.value == "") || isNaN(g_Obj.value)) 

if (hintFlag == 0) 

g_Obj.value = ""; 
if (focusFlag == 1) 
g_Obj.focus(); 
else 
g_Obj = null; 
alert("输入的内容必须为数字!"); 

return false; 

else 
g_Obj = null; 
return true; 

//------------------------------------- 
// 输入内容为整数 
//+------------------------------------ 
function LetInteger(obj, hintFlag, focusFlag) 

if (g_Obj == null) 
g_Obj=event.srcElement; 
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj)) 

g_Obj = null; 
return; 

g_Obj.value = g_Obj.value.trim(); 
if (!/^/d*$/.test(g_Obj.value) || (g_Obj.value == "")) 

if (hintFlag == 0) 

g_Obj.value = ""; 
if (focusFlag == 1) 
g_Obj.focus(); 
else 
g_Obj = null; 
alert("输入的内容必须为整数!"); 

return false; 

else 
g_Obj = null; 
return true; 

//------------------------------------- 
// 输入内容为字母 
//+------------------------------------ 
function LetLetter(obj, hintFlag, focusFlag) 

if (g_Obj == null) 
g_Obj=event.srcElement; 
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj)) 

g_Obj = null; 
return; 

if (!/^[A-Za-z]*$/.test(g_Obj.value)) 

if (hintFlag == 0) 

alert("输入的内容必须为字母!"); 
g_Obj.value = ""; 
if (focusFlag == 1) 
g_Obj.focus(); 
else 
g_Obj = null; 

return false; 

else 

g_Obj = null; 

return true; 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值