js验证函数 验证手机 邮箱/email 邮编 身份证 中文 ip及S有3种方式来获取元素

一.js验证函数 验证手机 邮箱/email 邮编 身份证 中文 ip

网址:   http://blog.sina.com.cn/s/blog_4481a3460100jkyk.html


邮件验证:

function jsmail(mail){return(newRegExp(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/).test(mail));}

手机号码验证:


  1. function isMobel(value)  
  2. {   
  3. if(/^13\d{9}$/g.test(value)||(/^15[0-35-9]\d{8}$/g.test(value))||  
  4. (/^18[05-9]\d{8}$/g.test(value))){    
  5.             returntrue 
  6. }else 
  7.             returnfalse 
  8. }   
  9. }

//去除左侧空格

function LTrim(str)

{

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

}

//去右空格

function RTrim(str)

{

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

}

//去掉字符串两端的空格

function trim(str)

{

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

}

//去除字符串中间空格

function CTim(str)

{

return str.replace(/\s/g,'');

}

//是否为由数字组成的字符串

function is_digitals(str)

{

var reg=/^[0-9]*$/;//匹配整数

returnreg.test(str);     

}

//验证是否为整数,包括正负数;

function Is_Int(str)

{

var reg=/^(-|\+)?\d+$/;

return reg.test(str);

}

//是大于0的整数

function Is_positive_num(str)

{

var reg=/^\d+$/;

return reg.test(str);

}

//负整数的验证

function Is_minus(str)

{

var reg=/^-\d+$/;

return reg.test(str);

}

//验证是否为浮点数(正数)

function IsPositiveFloat(str)

{

var check_float =newRegExp("^[1-9][0-9]*\.[0-9]+$");//匹配浮点数

return check_float.exec(str);

}

//是否为固定电话,区号3到4位,号码7到8位,区号和号码用"-"分割开,转接号码为1到6位,用小括号括起来紧跟在号码后面

function IsTelphone(str)

{

varreg=/^[0-9]{3,4}\-\d{7,8}(\(\d{1,6}\))?$/;

    

    if(reg.test(str))

  return true;

    else

       return false;

}

//台湾手机号码格式

var tel=/^(09)\d{8}$/;
    if(phone.value=="" || (!tel.test(phone.value)))
    {
       alert('請填寫正確的(手機格式09xxxxxxxx )!');
     phone.focus();
     return false;
    }

//手机号码验证,验证13系列和158,159几种号码,长度11位

function IsMobel(str)

{

var reg0 = /^13\d{9}$/;

    var reg1 =/^158\d{8}$/;

    var reg2 =/^159\d{8}$/;

 

    return(reg0.test(str)||reg1.test(str)||reg2.test(str))

}

//验证是否为中文

function IsChinese(str)

{

var reg=/^[\u0391-\uFFE5]+$/;

return reg.test(str);

}

//验证是否为qq号码,长度为5-10位

function IsQq(str)

{

var reg=/^[1-9]\d{4,9}$/;

return reg.test(str);

}

//验证邮编

function IsPostId(str)

{

var reg=/^\d{6}$/;

return reg.test(str);

}

//验证是否未email

function IsEmail(str)

{

varreg=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/; 或者是

var myreg =/^[-_A-Za-z0-9\.]+@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/;

return reg.test(str);

}

//验证IP地址

function IsIp(str)

{

var check=function(v)

{

  try

  {

    return(v<=255 &&v>=0)

  }catch(x){

    return false;

    }

}

var re=str.split(".")

return (re.length==4)?(check(re[0])&& check(re[1])&& check(re[2])&& check(re[3])):false

}

//身份证验证

function IsIdnum(str)

{

varCity={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:"国外"}

var iSum=0

var info=""

if(!/^\d{17}(\d|x)$/i.test(str))

  return false;

str=str.replace(/x$/i,"a");

if(City[parseInt(str.substr(0,2))]==null)

{

  alert( "Error:非法地区");

  return false;

}

sBirthday=str.substr(6,4)+"-"+Number(str.substr(10,2))+"-"+Number(str.substr(12,2));

var d=newDate(sBirthday.replace(/-/g,"/"))

if(sBirthday!=(d.getFullYear()+"-"+(d.getMonth()+1) + "-" + d.getDate()))

{

  alert("Error:非法生日");

  return false;

}

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

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

if(iSum%11!=1)

{

  alert("Error:非法证号");

  return false;

}

returnCity[parseInt(str.substr(0,2))]+","+sBirthday+","+(str.substr(16,1)%2?"男":"女")

}

//判断是否短时间,形如 (13:04:06)

function IsTime(str)

{

var a =str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/);

if (a == null)

{

  alert('输入的参数不是时间格式'); return false;

}

if (a[1]>24 ||a[3]>60 || a[4]>60)

{

  alert("时间格式不对");

  return false

}

return true;

}

//短日期,形如 (2003-12-05)

function IsDate(str)

{

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]);

}

// 长时间,形如 (2003-12-05 13:04:06)

function IsDateTime(str)

{

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]);

}

// 判断字符全部由a-Z或者是A-Z的字字母组成

function Is_Letters(str)

{

var reg=/[^a-zA-Z]/g;

return reg.test(str);

}

// 判断字符由字母和数字组成。

function Is_letter_num(str)

{

var reg=/[^0-9a-zA-Z]/g;

return reg.test(str);

}

//判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母

function IsUserName(str)

{

var reg=/^([a-zA-z_]{1})([\w]*)$/g;

return reg.test(str);

}

// 判断浏览器的类型

function GetBrowseType()

{

alert(window.navigator.appName);

}

//判断ie的版本

function Get_Eidition()

{

alert(window.navigator.appVersion);

}

//判断客户端的分辨率

function GetResolution()

{

alert(window.screen.height);

alert(window.screen.width);

}

// 判断用户名是否为数字字母下滑线

function notchinese(str)

{

var reg=/[^A-Za-z0-9_]/g

    if(reg.test(str))

{

    return (false);

    }

else

{

  return(true);

    }

  

     

//验证url

function IsUrl(str)

{

varreg=/^(http\:\/\/)?([a-z0-9][a-z0-9\-]+\.)?[a-z0-9][a-z0-9\-]+[a-z0-9](\.[a-z]{2,4})+(\/[a-z0-9\.\,\-\_\%\?\=\&]?)?$/i;

return reg.test(str);

}

//判断是否含有汉字       

function ContentWord(str)

{

if (escape(str).indexOf("%u")!=-1)

  return true;

else

  return false;

}

//页面里回车到下一控件的焦点

function Enter2Tab(e)

{

    try

    {

       var ōb = IsFireFox ? e.target : event.srcElement;

       if(ob.tagName == "INPUT" &&(ob.type== "text" ||ob.type == "password" ||ob.type == "checkbox"

         ||ob.type == "radio") ||ob.tagName == "SELECT")

       {

           var key = IsFireFox ? e.which : event.keyCode;

           if (key == 13)

           {

               if (IsFireFox)

               {

                   event.which = 9;

               }

               else

               {

                   event.keyCode = 9;

               }

           }

       }

    }

   catch(E){}

}

 

function InitAjax()

{

var ajax=false;

  try

{

    ajax = new ActiveXObject("Msxml2.XMLHTTP");

  } catch (e)

  {

      try

    {

       ajax =new ActiveXObject("Microsoft.XMLHTTP");

      } catch(E)

    {

       ajax = false;

      }

   }

  if (!ajax&& typeofXMLHttpRequest!='undefined')

{

    ajax = new XMLHttpRequest();

  }

  return ajax;

}

function callback(ajax)

{

//如果执行是状态正常,那么就把返回的内容赋值给上面指定的层

  if (ajax.readyState == 4&& ajax.status == 200)

 

   show.innerHTML =ajax.responseText;

  }

else

{

  alert("there was a problem retrieving the xmldata:"+ajax.statusText);

}

}

function getNews(newsID)

{

 //如果没有把参数newsID传进来

 if (typeof(newsID) == 'undefined')

 {

  return false;

 }

 //需要进行Ajax的URL地址

 var url = "show.php?id="+ newsID;

 //获取新闻显示层的位置

 var show =document.getElementByIdx("show_news");

 //实例化Ajax对象

 var ajax = InitAjax();

 //使用Get方式进行请求

 ajax.open("GET",url,true);

 //获取执行状态

 ajax.onreadystatechange=function() {

if (ajax.readyState == 4&& ajax.status == 200)

 

   show.innerHTML =ajax.responseText;

  }

}

 //发送空

 ajax.send(null);

}

//_______全选择__________

function SelectAll()

{

    varempty;

    var f =document.forms[0];

    for (var i =0; i < f.length; i++)

    {

       empty = f[i];

       if (empty.type == "checkbox" &&empty.disabled == false)

           empty.checked = true;

    }

}

//__________返选择_________

function SelectReverse()

{

    varempty;

    var f =document.forms[0];

    for (var i =0; i < f.length; i++)

    {

       empty = f[i];

       if (empty.type == "checkbox" &&empty.disabled == false)

  if(empty.checked == true)

  {

    empty.checked = false;

  }

  else

  {

    empty.checked = true;

  }

    }

}

 




二.JS有3种方式来获取元素

来源于:http://www.popo4j.com/tag/DOM.html

 

原生JS有3种方式来获取元素:

  1. getElementById('id')
  2. getElementsByName('name')
  3. getElementsByTagName('tag')

getElementById是获取元素最快的方式,但我们不能给每个HTML元素都加以ID吧,所以我们需要一个很方便的通过classname来获取元素:

 

function getElementsByClassName(className,tagName){
var ele=[],all=document.getElementsByTagName(tagName||"*");
for(var i=0;i<all.length;i++){
if(all[i].className==className){
ele[ele.length]=all[i];
}
}
return ele;
}
console.log(getElementsByClassName("entry"));
console.log(getElementsByClassName("entry","div"));

 

01function replaceHtml(el, html) {
02var oldEl = typeof el === "string" ? document.getElementById(el) : el;
03/*@cc_on // 原始的 innerHTML 在 IE 中的性能好一点
04oldEl.innerHTML = html;
05return oldEl;
06@*/
07var newEl = oldEl.cloneNode(false);
08newEl.innerHTML = html;
09oldEl.parentNode.replaceChild(newEl, oldEl);
10/* 一旦我们从 DOM 上移除老的元素,则返回新的元素引用。*/
11return newEl;
12};
 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值