`
duyouhua1214
  • 浏览: 228269 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

javascript校验

阅读更多

//判断字符串是否为空白
function IsBlank(str)
{
 return str==''||str.length==0;
};
//检查字符串是否在一定的长度范围内
function CheckLen(str,ilen)
{
 if(str=='')return true;return str.length>ilen;
};
//检查字符串是否为金额。
function IsMoney(str)
{
 if(str=='')return true;
 var reg=/^\d+\.\d{2}$/;
 return reg.test(str);
};
//判断某字符串是否在另外两个字符串中。
function isBetween(str,lo,hi)
{
 if(str=='')return true;
 if((str<lo)||(str>hi))return false;
 else return true;
};
//检查某字符串是否为邮政编码
function IsCnZip(str)
{
 if(str=='')return true;
 return IsLenNum(str,6);
};
//检查某字符串是否为QQ号码
function IsQQ(str)
{
 if(str=='')return true;
 var reg=/^[1-9][0-9]{4,}/;return reg.test(str);
};
//检查某字符串是否为整数,包括正负数。
function IsInt(str)
{
 if(str=='')return true;
 var reg=/^(-|\+)?\d+$/;
 return reg.test(str);
};
//检查字符串是否为无符号整数
function IsPInt(str)
{
 if(str=='')return true;
 var reg=/^\d+$/;
 return reg.test(str);
};
//检查字符串是否为负整数
function IsNInt(str)
{
 if(str=='')return true;
 var reg=/^-\d+$/;return reg.test(str);
};
//检查字符串是否为浮点数字
function IsFloat(str)
{
 if(str=='')return true;
 var reg=/^(-|\+)?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$/;
 return reg.test(str);
};
//检查字符串是否为无符号浮点数字
function IsPFloat(str)
{
 if(str=='')return true;
 var reg=/^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$/;
 return reg.test(str);
};
//检查字符串是否为负浮点数字
function IsNFloat(str)
{
 if(str=='')return true;
 var reg=/^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$/;
 return reg.test(str);
};
//检查字符串是否为字母
function IsASC(str)
{
 if(str=='')return true;
 var reg=/[^a-zA-Z]/;
 return!reg.test(str);
};
//检查字符串是否为数字
function IsNum(str)
{
 if(str=='')return true;
 var reg=/[^0-9]/;return!reg.test(str);
};
//检查字符串是否为指定长度的数字
function IsLenNum(str,ilen)
{
 if(str=='')return true;
 var reg=/[^0-9]/;
 return!reg.test(str)&&str.length==ilen;
};
//检查字符串是否为中文字符
function IsCnStr(str)
{
 if(str=='')return true;
 var reg=/[^\u4e00-\u9fa5]/;
 return!reg.test(str);
};
//检查字符串是否为EMAIL地址
function IsEmail(str)
{
 if(str=='')return true;
 var reg=/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
 return reg.test(str);
};
//检查某字符串是否为IP地址
function IsIP(str)
{
 if(str=='')return true;
 var re=str.match(/(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})/);
 if(re==null)
  return false;
 var check=function(v)
 {
  try
  {
   return(v<=255&&v>=0);
  }
  catch(x)
  {
   return false;
  }
 };
    alert(re.length);
    return(re.length==5)?(check(re[1])&&check(re[2])&&check(re[3])&&check(re[4])):false;
};
//检查某字符串是否为电话号码
function IsPhone(str)
{
 if(str=='')return true;
 var reg=/^\d{3,4}-\d{6,8}|(\d{3,4})\d{6,8}|\d{6,8}/;
 return reg.test(str);
};

//检查某字符串是否为手机号码
function IsMobile(str)
{
 if(str=='')return true;
 var reg=/^13(?=\d).{9}$/;
 return reg.test(str);
};

//检查某字符串是否为日期
function IsDate(str)
{
 if(str=='')return true;
 var r=str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
 if(r==null)return false;
 var d=new Date(r[1],r[3]-1,r[4]);
 return(d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
};
//检查某字符串是否为时间
function IsTime(str)
{
 if(str=='')return true;
 var a=str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/);
 if(a==null)return false;
 if(a[1]>24||a[3]>60||a[4]>60)return false;
 return true;
};
//检查某字符串是否为日期时间
function IsDateTime(str)
{
 if(str=='')return true;
 var reg=/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
 var r=str.match(reg);
 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]);
};

只能输入数字:“^[0-9]*$”
只能输入n位的数字:“^\d{n}$”
只能输入至少n位数字:“^\d{n,}$”
只能输入m-n位的数字:“^\d{m,n}$”
只能输入零和非零开头的数字:“^(0|[1-9][0-9]*)$”
只能输入有两位小数的正实数:“^[0-9]+(.[0-9]{2})?$”
只能输入有1-3位小数的正实数:“^[0-9]+(.[0-9]{1,3})?$”
只能输入非零的正整数:“^\+?[1-9][0-9]*$”
只能输入非零的负整数:“^\-[1-9][0-9]*$”
只能输入长度为3的字符:“^.{3}$”
只能输入由26个英文字母组成的字符串:“^[A-Za-z]+$”
只能输入由26个大写英文字母组成的字符串:“^[A-Z]+$”
只能输入由26个小写英文字母组成的字符串:“^[a-z]+$”
只能输入由数字和26个英文字母组成的字符串:“^[A-Za-z0-9]+$”
只能输入由数字、26个英文字母或者下划线组成的字符串:“^\w+$”
验证用户密码:“^[a-zA-Z]\w{5,17}$”正确格式为:以字母开头,长度在6-18之间,

只能包含字符、数字和下划线。
验证是否含有^%&',;=?$\"等字符:“[^%&',;=?$\x22]+”
只能输入汉字:“^[\u4e00-\u9fa5],{0,}$”
验证Email地址:“^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$”
验证InternetURL:“^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$”
验证电话号码:“^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$”

正确格式为:“XXXX-XXXXXXX”,“XXXX-XXXXXXXX”,“XXX-XXXXXXX”,

“XXX-XXXXXXXX”,“XXXXXXX”,“XXXXXXXX”。
验证身份证号(15位或18位数字):“^\d{15}|\d{}18$”
验证一年的12个月:“^(0?[1-9]|1[0-2])$”正确格式为:“01”-“09”和“1”“12”
验证一个月的31天:“^((0?[1-9])|((1|2)[0-9])|30|31)$”

正确格式为:“01”“09”和“1”“31”。 

输入框中对危险字符'%></=过滤:     onkeyup="value=value.replace(/[\'\%\>\<\/\=]+/,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\'\%\>\<\/\=]+/,''))"

//检查表单数据
function CheckForm(oForm,callback)
{
 var els=oForm.elements;
 for(var i=0;i<els.length;i++)
 {
  var strCheck=els[i].getAttribute("check");
  if(strCheck)
  {
   var sVal=GetValue(els[i]);
   var sWarning=els[i].getAttribute("warning");
   var aCheck=strCheck.split("||");
   var aWarning=sWarning.split("||");
   for(var j=0;j<aCheck.length;j++)
   {
    strCheck=aCheck[j];
    sWarning=aWarning[j];
    if(strCheck!='')
    {
     if(strCheck.substr(0,2)=='f:')
     {
      var strfunc=strCheck.substr(2);
      strfunc=strfunc.replace('$str','"'+sVal+'"');
      if(!eval(strfunc))
      {
       var bState;
       if(sWarning.substr(0,2)=='c:')
       {
        sWarning=sWarning.substr(2);
        bState=confirm(sWarning)
       }
       else
       {
        alert(sWarning);
        bState=false;
       };
       if(!bState)
       {
        GoBack(els[i]);
        if(callback)callback(bState);return bState;
       };
      };
     }
     else
     {
      var reg=new RegExp(strCheck,"i");
      if(!reg.test(sVal))
      {
       var bState;
       if(sWarning.substr(0,2)=='c:')
       {
        sWarning=sWarning.substr(2);
        bState=confirm(sWarning);
       }
       else
       {
        alert(sWarning);
        bState=false;
       };
       if(!bState)
       {
        GoBack(els[i]);
        if(callback)callback(bState);return bState;
       };
      };
     };
    };
   };
  };
 };
 if(callback)callback(true);
 return true;
};

function GetValue(el)
{
 var sType=el.type;
 switch(sType)
 {
  case"text":
  case"hidden":
  case"password":
  case"file":
  case"textarea":
  return el.value;
  case"checkbox":
  case"radio":
  return GetValueChoose(el);
  case"select-one":
  case"select-multiple":
  return GetValueSel(el);
 };
};

function GetValueChoose(el)
{
 var sValue="";
 var tmpels=GEName(el.name);
 for(var i=0;i<tmpels.length;i++)
 if(tmpels[i].checked)sValue+="0";
 return sValue;
};

function GetValueSel(el)
{
 var sValue="";
 for(var i=0;i<el.options.length;i++)
 if(el.options[i].selected&&el.options[i].value!="")
 sValue+="0";
 return sValue;
};

function GoBack(el)
{
 var sType=el.type;
 switch(sType)
 {
  case"text":
  case"hidden":
  case"password":
  case"textarea":
  el.focus();
  if(el.createTextRange)
  {
   var oRange=el.createTextRange();
   oRange.moveStart("character",0);
   oRange.moveEnd("character",el.value.length);
   oRange.select();
  }else if(el.setSelectionRange)
  {
   el.setSelectionRange(0,el.value.length);
  };
  case"checkbox":
  case"radio":
  var els=GEName(el.name);
  els[0].focus();
  case"file":
  case"select-one":
  case"select-multiple":
  el.focus();
 }
;};
function GEName(sName)
{
 return document.getElementsByName(sName);
};

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics