`
gaozzsoft
  • 浏览: 424745 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

JavaScript校验大全

阅读更多
JavaScript校验大全

[code]
var IsFireFox = document.getElementById &&! document.all;//判断是否为FireFox

//页面里回车到下一控件的焦点
function Enter2Tab(e)
{
    try
    {
        var ob = 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){}
}
//打开此功能请取消下行注释
//document.onkeydown = Enter2Tab;

//ajax对象创建
function AjaxLib()
{
    try
    {
        if (typeof ActiveXObject != "undefined")
        {
            return new ActiveXObject("Microsoft.XMLHTTP");
        }
        else if (window.XMLHttpRequest)
        {
            return new XMLHttpRequest();
        }
    }
    catch(a){}
    return null;
}
//判断用户名是否符合标准
function UserNameIsOk(ssn)
{
    var re = /^[0-9a-z][\w-.]*[0-9a-z]$/i;
    return re.test(ssn) ? true : false;
}
function SelectAll()
//_______全选择__________
{
    var empty;
    var f = document.forms[0];
    for (var i = 0; i < f.length; i++)
    {
        empty = f;
        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;
        if (empty.type == "checkbox" && empty.disabled == false)
        if(empty.checked == true)
        {
           empty.checked = false;
        }
        else
        {
           empty.checked = true;
        }
    }
}
//提交查询内容 submit search find content
function GoPage(pn)
{
    try
    {
        document.forms[0].page.value = pn;
        document.forms[0].submit();
    }
    catch(E)
    {
        document.forms[1].page.value = pn;
        document.forms[1].submit();
    }
}[/code]

--------------------------------------------------------------------------------
[code]
function WoodsAlert(ob, tip)
{
    alert(tip);
    //ob.value = "";
    ob.focus();
}
//__________处理特殊字符________________
function invalid_keyword()
{
    var keyword = new Array("<", ">", "\%", "\'", "\"");
    var f, ob;
    for (var form = 0; form < document.forms.length; form++)
    {
        f = document.forms[form];
        for (var i = 0; i < f.length; i++)
        {
            ob = f;
            if (ob.type == "text" && ob.disabled == false)
            {
               for (j = 0; j < keyword.length; j++)
               {
                    if (ob.value.indexOf(keyword[j]) != -1)
                    {
                        alert("在输入框聚焦处发现非法字符[" + keyword[j] + "]。");
                        //ob.value = "";
                        ob.focus();
                        return false;
                    }
               }
               ob.value = Trim(ob.value);
            }
        }
    }
    return true;
}
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)
    {
      return false
    }
    return true;
}

function IsDate(str)
//_________是否为日期(YYYY-MM-DD)类型字符串_________________________
{
    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 IsBigCurrentDate(str)
//_________________判断用户给出的日期是否大于当前日期______________________________
{
    var today = new Date();
    var tY = String(today.getFullYear());
    var tM = String(today.getMonth() + 1);
    (tM.length <= 1) ? tM = "0" + tM : tM = tM;

    var tD = String(today.getDate());
    (tD.length <= 1) ? tD = "0" + tD : tD = tD;

    var tH = String(today.getHours());
    (tH.length <= 1) ? tH = "0" + tH : tH = tH;

    var tM1 = String(today.getMinutes());
    (tM1.length <= 1) ? tM1 = "0" + tM1 : tM1 = tM1;

    var tdate = tY + "-" + tM + "-" + tD + " " + tH + ":" + tM1 + ":59";//zhuweisong 添加秒的叛断
    if (str > tdate)
    {
        return true;
    }
    else
    {
        return false;
    }
}

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]);
}
function IsEmail(mail)
//_____________判断是否是有效的EMAIL地址________________________________
{
    return(new RegExp(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/).test(mail));
}

function IsIp(s)
//________________判断是否为有效IP地址_________________________________
{
    var check = function(v)
    {
        try
        {
            return (v <= 255 && v >= 0);
        }
        catch(x)
        {
            return false;
        }
    }
    var re = s.split(".")
    return (re.length==4)?(check(re[0]) && check(re[1]) && check(re[2]) && check(re[3])):false
}

//_________判断输入的是否为汉字___________begin__________
function isCharsInBag (s, bag)
{
    var i,c;
    for (i = 0; i < s.length; i++)
    {
        c = s.charAt(i);//字符串s中的字符
        if (bag.indexOf(c) > -1)
        return c;
    }
    return "";
}
==========================================================
是否为中文:
function isCn(s)
{
    var errorChar;
    var badChar = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789><,[]{}?/+=|\'\":;~!#$%()`";
    errorChar = isCharsInBag(s, badChar)
    if (errorChar != "" )
    {
        return false;
    }
    return true;
}
//_________判断输入的是否为汉字___________end__________

//________函数功能:判断输入的字符串是不是英文__________begin___________
function isCharsInBagEn (s, bag)
{
    var i,c;
    for (i = 0; i < s.length; i++)
    {
        c = s.charAt(i);//字符串s中的字符
        if (bag.indexOf(c) <0)
        return c;
    }
    return "";
}

function IsEn(s)
{
    var errorChar;
    var badChar = " ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
    errorChar = isCharsInBagEn(s, badChar)
    return (errorChar != "" ) ? false : true;
}
//________函数功能:判断输入的字符串是不是英文__________end___________

/********************
函数名称:IsTelephone
函数功能:固话,手机号码检查函数,合法返回true,反之,返回false
函数参数:obj,待检查的号码
检查规则:
  (1)电话号码由数字、"("、")"和"-"构成
  (2)电话号码为3到8位
  (3)如果电话号码中包含有区号,那么区号为三位或四位
  (4)区号用"("、")"或"-"和其他部分隔开
  (5)移动电话号码为11或12位,如果为12位,那么第一位为0
  (6)11位移动电话号码的第一位和第二位为"13"
  (7)12位移动电话号码的第二位和第三位为"13"
********************/
function IsTelephone(obj)
{
    var pattern=/(^([0\+]\d{2,3})\d{3,4}\-\d{3,8}$)|(^([0\+]\d{2,3})\d{3,4}\d{3,8}$)|(^([0\+]\d{2,3}){0,1}13\d{9}$)|(^\d{3,4}\d{3,8}$)|(^\d{3,4}\-\d{3,8}$)/;
    return (pattern.test(obj)) ? true : false;
}

/********************
函数名称:IsLegality
函数功能:检查字符串的合法性,即是否包含" '字符,包含则返回false;反之返回true
函数参数:obj,需要检测的字符串
********************/
function IsLegality(obj)
{
    var intCount1 = obj.indexOf("\"",0);
    var intCount2 = obj.indexOf("\'",0);
    return (intCount1 > 0 || intCount2 > 0) ? false : true;
}
/********************
函数名称:IsNumber
函数功能:检测字符串是否全为数字
函数参数:str,需要检测的字符串
********************/
function IsNumber(str)
{
    var number_chars = "1234567890";
    var i;
    for (i = 0; i < str.length; i++)
    {
        if (number_chars.indexOf(str.charAt(i))==-1) return false;
    }
    return true;
}
/********************
函数名称:Trim
函数功能:去除字符串两边的空格
函数参数:str,需要处理的字符串
********************/
function Trim(str)
{
    return str.replace(/(^\s*)|(\s*$)/g, "");
}

/*-------------------------------------------------------------------------------------------------------*/

/********************
函数名称:LTrim
函数功能:去除左边的空格
函数参数:str,需要处理的字符串
********************/
function LTrim(str)
{
    return str.replace(/(^\s*)/g, "");
}

/*-------------------------------------------------------------------------------------------------------*/

/********************
函数名称:RTrim
函数功能:去除右边的空格
函数参数:str,需要处理的字符串
********************/
function RTrim(str)
{
    return this.replace(/(\s*$)/g, "");
}

/*-------------------------------------------------------------------------------------------------------*/

/********************
函数名称:IsNull
函数功能:判断给定字符串是否为空
函数参数:str,需要处理的字符串
********************/
function IsNull(str)
{
    return (Trim(str) == "") ? false : true;
}
/*-------------------------------------------------------------------------------------------------------*/
function EventFalse()
{
        window.event.returnValue = false;
}

//document.oncontextmenu = EventFalse;
//document.onselectstart = EventFalse;
//-->
[/code]
 
==============================================
(二)
String.prototype.Trim = function() { 
   var m = this.match(/^\s*(\S+(\s+\S+)*)\s*$/); 
   return (m == null) ? "" : m[1]; 
 }
 String.prototype.isMobile = function() { 
   return (/^(?:13\d|15[0-9])-?\d{5}(\d{3}|\*{3})$/.test(this.Trim())); 
 }
 String.prototype.isTel = function()
 {
  //"兼容格式: 国家代码(2到3位)-区号(2到3位)-电话号码(7到8位)-分机号(3位)"
  //return (/^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/.test(this.Trim()));
  return (/^(([0\+]\d{2,3}-)?(0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/.test(this.Trim()));
 }
function checkValue(){
  frm=document.forms[0];
  frm.name.value = frm.name.value.Trim();
  frm.dept.value = frm.dept.value.Trim();
  frm.zipcode.value = frm.zipcode.value.Trim();
  frm.phone.value =  frm.phone.value.Trim();
  frm.fax.value = frm.fax.value.Trim();
  frm.address.value = frm.address.value.Trim();
  if(frm.name.value ==""|| frm.name.value == null){
   alert("请输入真实姓名!");
   frm.name.focus();
   return false;
  }else if(frm.name.value.length>20){
   alert("你输入的姓名过长,应在20个字符以内!");
   frm.name.focus();
   return false;
  }
  if(frm.companyname.value == ""||frm.companyname.value==null){
   alert("请填写您的公司名称");
   frm.companyname.focus();
   return false;
  }
  if(frm.dept.value == "" || frm.dept.value==null){
   alert("请输入部门及职务!");
   frm.dept.focus();
   return false;
  }
  if(frm.email.value != ""){
   if(frm.email.value.length>40){
    alert("你输入的email太长!字符应在40个以内");
    frm.email.focus();
    return false;
   }
   if(!chkEmail(frm.email)){
    alert("你输入的Email格式不对,请重新输入");
    frm.email.focus();
    return false;
   }
  }
  if(frm.phone.value == "" || frm.phone.value == null){
   alert("请输入您的电话号码");
   frm.phone.focus();
   return false;
  }else{
   if(!frm.phone.value.isTel()){
    alert("请输入正确的电话号码");
    frm.phone.focus();
    return false;
   }
  }
  if(frm.mobile.value =="" || frm.mobile.value == null){
   alert("请输入您的手机号码");
   frm.mobile.focus();
   return false;
  }else{
   if(!frm.mobile.value.isMobile()){
    alert("请输入正确的手机号码");
    frm.mobile.focus();
    return false;
   }
  }
  if(frm.fax.value == "" || frm.fax.value == null){
   alert("请输入您的传真号码");
   frm.fax.focus();
   return false;   
  }else{
   if(!frm.fax.value.isTel()){
    alert("请输入正确的传真号码");
    frm.fax.focus();
    return false;
   }   
  }
  if(frm.address.value == ""||frm.address.value==null){
   alert("请输入联系地址!");
   frm.address.focus();
   return false;
  }else if(frm.address.value.length>100){
   alert("你输入的联系地址太长,应在100个字符以内!");
   frm.address.focus();
   return false;
  }
    if(frm.zipcode.value==null || frm.zipcode.value == "")
    {
    alert("对不起,您还没有输入邮政编码!");
    frm.zipcode.focus();
    return false;
    }
    if(frm.zipcode.value!=null && frm.zipcode.value != "")
    {
   if(frm.zipcode.value.length > 6)
   {
    alert("对不起,邮政编码不能超过6个数字!");
    frm.zipcode.focus();
    return false;
   }
     if(!checkZipcode(frm.zipcode))
   {
    alert("对不起,邮政编码必须是6个数字!");
    frm.zipcode.focus();
    return false;
   }
    }
 
 
 
 function emailCheck() {
 var emailStr=document.form.email.value;
 var emailPat=/^(.+)@(.+)$/;
 var matchArray=emailStr.match(emailPat);
 if (matchArray==null) {
   return false;
 }
 return true;
}

function strlen(str){
 var len;
 var i;
 len = 0;
 for (i=0;i<str.length;i++){
  if (str.charCodeAt(i)>255) len+=2; else len++;
 }
 return len;
}
function strlen2(str){
 var len;
 var i;
 len = 0;
 for (i=0;i<str.length;i++){
  if (str.charCodeAt(i)>255) return true;
 }
 return false;
}
if( strlen(password.value)<6 || strlen(password.value)>16 ) {
     alert("\正确的密码长度为6-16位,仅可用英文、数字、特殊字符! ")
     password.focus()
     return false;
 }
 if( strlen2(password.value) ) {
  alert("\密码中包含了非法字符,仅可用英文、数字、特殊字符!")
  password.focus()
  return false;
 }
 if( confirmPassword.value != password.value ) {
     alert("\登录密码两次输入不一致 !!")
     confirmPassword.focus()
     return false;
 }
 
 if(!emailCheck()) {
  alert("请输入正确的电子邮件地址格式!!")
  email.focus()
  return false;
 }
}
function isChinese(username){
 var re = new RegExp("[\\u4e00-\\u9fa5]", "g");
 var yesorno = re.test(username);
 if(yesorno){
        return true;
 }
 else{
        return false;
 }
}
if(isChinese(username.value)){
  alert("用户名不能是中文请重新输入");
  username.focus();
  return false;
 }else if(username.value.length<4 || username.value.length>18){
  alert("用户名长度只能是4-18个字符");
  username.focus();
  return false;
 }
 if( username.value == "admin" || username.value =="administrators" || username.value == "administrator") {
  alert("\对不起,请不要注册admin,administrator,administrators等用户名")
  username.focus()
  return false ;
 }
if( strlen(password.value)<6 || strlen(password.value)>16 ) {
     alert("\正确的密码长度为6-16位,仅可用英文、数字、特殊字符! ")
     password.focus()
     return false;
 }
 if( strlen2(password.value) ) {
  alert("\密码中包含了非法字符,仅可用英文、数字、特殊字符!")
  password.focus()
  return false;
 }
 if( confirmPassword.value != password.value ) {
     alert("\登录密码两次输入不一致 !!")
     confirmPassword.focus()
     return false;
 }
 
=============================================
用javascript实现input文本框只能输入中文的方法:
<script type="text/javascript">
function ischarsinbag (s, bag)
{
var i,c;
for (i = 0; i < s.length; i++){
c = s.charAt(i);//字符串s中的字符
if (bag.indexOf(c) > -1){
return c;
}
}
return "";
}
//检查函数
function ischinese(s)
{
var errorchar;
var badchar = "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789><,[]{}?/+=|\\":;~!#$%()`";
errorchar = ischarsinbag( s, badchar)
if (errorchar != "" ){
report="请重新输入中文\n";
alert(report);
return false;
}
return true;
}
</script>
<input name="test" id="test" onblur="ischinese(this.value);" type="text"/>
分享到:
评论

相关推荐

    常用js大全,javascript校验大全

    这个“常用js大全,javascript校验大全”集合了多种常见的验证功能,确保用户输入的数据格式正确,从而提高用户体验和系统安全性。以下是一些主要的知识点: 1. **数字验证**:用于检查字符串是否全由数字组成,这...

    javascript校验大全

    本文将深入探讨“javascript校验大全”所涵盖的验证技术,包括表单验证、数据类型验证以及特殊格式验证,如邮箱、身份证号等。 1. **表单验证**:在网页交互中,表单是最常见的用户输入接口。JavaScript可以实时...

    JavaScript 数据校验 用户登录 示例代码

    JavaScript 数据校验 用户登录 示例代码JavaScript 数据校验 用户登录 示例代码JavaScript 数据校验 用户登录 示例代码JavaScript 数据校验 用户登录 示例代码JavaScript 数据校验 用户登录 示例代码JavaScript 数据...

    JavaScript 数据校验 正则表达式 示例代码

    JavaScript 数据校验 正则表达式 示例代码JavaScript 数据校验 正则表达式 示例代码JavaScript 数据校验 正则表达式 示例代码JavaScript 数据校验 正则表达式 示例代码JavaScript 数据校验 正则表达式 示例代码...

    JavaScript通用校验汇总

    JavaScript通用校验汇总

    JavaScript校验设计.zip

    在网页开发中,JavaScript校验设计扮演着至关重要的角色,它能够确保用户输入的数据符合预设的格式和规则,减少服务器端的压力,提高用户体验。本文将深入探讨JavaScript中的数据验证设计与数据获取。 一、...

    身份证校验JavaScript

    身份证校验JavaScript 身份证校验JavaScript 身份证校验JavaScript

    javascript身份证校验

    用javascript 校验 身份证 的真实性

    纯javascript校验框架

    一款纯javascript的校验框架,支撑动态的生成界面校验和静态的界面校验,十分实用,并且可以支撑自定义校验方法。 并且本人正在着手设计一套gme的平台,目前已经实现了很多快速开发经验的积累,有兴趣者可以联系...

    javascript校验身份证号码合法性

    使用javascript校验身份证号码的合法性 校验规则严格,很容易套用到项目中 套用例子详见http://blog.csdn.net/zcyhappy1314/article/details/8645189

    页面特效JavaScript校验等

    "页面特效JavaScript校验等"这一主题涵盖了两个主要概念:页面特效和JavaScript验证。 页面特效是网页设计中的一个关键元素,它使得用户体验更加生动有趣。JavaScript能够帮助开发者创建出各种各样的视觉效果,如...

    javascript 常用校验代码

    通过学习和理解这些JavaScript校验代码,开发者可以构建更健壮、更安全的应用程序,减少错误并提供更好的用户体验。同时,了解和掌握这些技术也有助于提升编程能力,适应不断变化的Web开发需求。

    jquery 校验大全 实例

    "jQuery校验大全实例"是针对使用jQuery进行表单验证的一个综合资源,非常适合开发者学习和应用。这个压缩包可能包含了各种jQuery验证插件、代码示例以及详细的教程,旨在帮助开发者实现高效且用户友好的表单验证。 ...

    网页中的各种校验大全

    本资源"网页中的各种校验大全"提供了全面的正则表达式应用实例,包括中文、邮箱、电话号码等常见数据类型的校验。 1. **中文字符校验**:在网页中,有时需要用户输入中文名称或内容,如用户名、评论等。正则表达式...

    javascript校验集合

    在这个名为“javascript校验集合”的资源中,你将找到一系列针对不同类型数据的验证函数,如邮箱、身份证、数字和字母等。这些验证规则可以帮助你构建更健壮的前端应用程序。 首先,我们来看电子邮件验证。在互联网...

    javascript 校验正则表达式

    本篇文章将深入探讨JavaScript校验正则表达式的方法和实例。 一、基础概念 1. 正则表达式模式:模式是描述一组字符串的规则,例如`/\d+/`表示匹配一个或多个数字。 2. 标志(flags):用于改变正则表达式的匹配...

    javascript常用校验脚本

    这些验证脚本是JavaScript中进行数据校验的基本工具,它们可以根据实际需求进行组合和扩展,以满足更复杂的应用场景。例如,你可以结合这些函数创建一个自定义的表单验证器,对用户输入进行全方位的检查。同时,随着...

    JavaScript 校验密码强度

    总结起来,JavaScript提供了一种灵活的方式来校验密码强度,开发者可以根据需求定制规则并展示相应的提示。通过学习和理解正则表达式以及如何在JavaScript中应用它们,我们可以创建出功能强大且用户友好的密码验证...

    json格式校验前端插件(javascript)

    本文将详细介绍一个基于JavaScript的JSON格式校验前端插件,以及如何利用它来提高开发效率。 首先,这个插件主要提供了以下功能: 1. **JSON字符串格式化**:当接收到JSON数据时,前端开发者可以使用这个插件将...

Global site tag (gtag.js) - Google Analytics