常用js验证

稿件来源: 阳光企业网站管理系统   撰稿作者: 太阳光   发表日期: 2011-03-21   阅读次数: 72   查看权限: 游客查看

常用js验证

//去除左侧空格
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]*$/;//匹配整数
 return reg.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 =new RegExp("^[1-9][0-9]*\.[0-9]+$");//匹配浮点数
 return check_float.exec(str);
}
//是否为固定电话,区号3到4位,号码7到8位,区号和号码用"-"分割开,转接号码为1到6位,用小括号括起来紧跟在号码后面
function IsTelphone(str){
 var reg=/^[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){
 var reg=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
 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){
 var City={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=new Date(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;
 }
 return City[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){
 var reg=/^(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){}
}
/**
* 初始化一个xmlhttp对象
*/
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 && typeof XMLHttpRequest!='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 xml data:"+ajax.statusText);
}
}
function getNews(newsID){
 //如果没有把参数newsID传进来
 if (typeof(newsID) == 'undefined'){
return false;
 }
 //需要进行Ajax的URL地址
 var url = "show.php?id="+ newsID;
 //获取新闻显示层的位置
 var show = document.getElementById("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(){
var empty;
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(){
var empty;
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;
}
}
}
 

关键词: javascript,js验证   编辑时间: 2011-03-21

  • 感到高兴

    0

    高兴
  • 感到支持

    0

    支持
  • 感到搞笑

    0

    搞笑
  • 感到不解

    0

    不解
  • 感到谎言

    0

    谎言
  • 感到枪稿

    0

    枪稿
  • 感到震惊

    0

    震惊
  • 感到无奈

    0

    无奈
  • 感到无聊

    0

    无聊
  • 感到反对

    0

    反对
  • 感到愤怒

    0

    愤怒
0%(0)
0%(0)
共有0 条评论 发言请遵守【相关规定

网友评论

会员头像
发 表同步腾讯微博    验证码:  点击更新请先登陆
  • 暂无评论
关闭模块文章图片 article Pictrue
  • 我的妈妈爸爸
  • 基于koa2+mysql+vue2.0+Element阳光内容管理系统
  • 代码覆盖率工具 Istanbul 入门教程
  • 全栈工程师的武器——MEAN
  • 9款超炫的 CSS3 复选框(Checkbox)
  • 微信开发在线翻译功能
  • CSS3那些不为人知的高级属性
  • 给easyui的datebox添加清空事件
  • flash写字效果
  • kendoUI系列教程之DropDownList下拉菜单
  • kendoUI系列教程之datetimepicker日期时间选择
  • kendoUI系列教程之datepicker日期选择
  • kendoUI系列教程之combobox下拉列表框
  • kendoUI系列教程之colorpicker
  • kendoUI系列教程之calendar日历表
  • kendoUI系列教程之autocomplete自动补齐