`

JS表单脚本输入验证

阅读更多

JS表单脚本输入验证
*以下是库函数目录及使用说明:
*
*常用
*1、Trim=去除字符串前后空格         使用方法:String.trim()
*2、ctrim=去除字符串中间空格         使用方法:String.ctrim()
*3、onClickSelect=点中text框的时候,选中其中的文字    使用方法:在input位置加上
onClick/onFocus="onClickSelect();" 即可

*
*动态输入类             使用方法:在input位置加上 onkeypress="函数名" 即可
*1、TextOnly=只允许输入字母、数字、下划线
*2、TextNumOnly=只允许输入字母、数字
*3、NumOnly=只允许输入数字
*4、TelOnly=只能输入电话、"-"、"("、")"
*
*表单验证类
*1、isAccount=是否帐号(由字母、数字、下划线组成){有两种选择,一种有长度限制}
*2、isChinese=是否中文(由中文、数字、字母组成)
*3、ismail=是否Email
*4、isip=是否ip
*5、PhoneCheck=电话号码检测(电话和手机)
*6、isMobile=手机号码检测
*7、isDate=是否短日期
*8、isTime=是否时间
*9、isDateTime=是否长日期
*
*其它函数
*1、changeFrame=改变Frame大小
*2、CheckAll=全选/全不选
*3、onKeyDownDefault=回车->转->Tab
*4、admin_Size=改变TextArea输入框高度
*
*其它验证正则表达式
*Email : /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
*Phone : /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/
*Url : /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/
*Currency : /^\d+(\.\d+)?$/
*Number : /^\d+$/
*Zip : /^[1-9]\d{5}$/
*QQ : /^[1-9]\d{4,8}$/
*Integer : /^[-\+]?\d+$/
*Double : /^[-\+]?\d+(\.\d+)?$/
*English : /^[A-Za-z]+$/
*Chinese : /^[\u0391-\uFFE5]+$/
*UnSafe : /^(([A-Z]*|[a-z]*|\d*|[-_\~!@#\$%\^&\*\.\(\)\[\]\{\}<>\?\\\/\'\"]*)|.{0,5})$|\s/
*Username : /^[a-z]\w{3,}$/i(用户名验证,带长度限制)
*/

//========================================================================常用函数
//--------------------------------除去前后空格
String.prototype.trim = function()
{
    //用正则表达式将前后空格用空字符串替代。
    return this.replace(/(^\s*)|(\s*$)/g, "");
}
//--------------------------------除去中间空格
String.prototype.ctrim = function()
{
    //用正则表达式将中间空格用空字符串替代。
return this.replace(/\s/g,'');
}
//--------------------------------点中text框的时候,选中其中的文字
/**
*方法名:onClickSelect
*描述:点中text框的时候,选中其中的文字
*输入:空
*输出:空
**/
function onClickSelect()
{
    var obj = document.activeElement;
    if(obj.tagName == "TEXTAREA")
{
        obj.select();
}
    if(obj.tagName == "INPUT" )
{
        if(obj.type == "text")
   obj.select();
}
}
//========================================================================动态输入类函数
//--------------------------------只允许输入字母、数字、下划线(动态判断)
function TextOnly(){
    var i= window.event.keyCode
//8=backspace
//9=tab
//37=left arrow
//39=right arrow
//46=delete
//48~57=0~9
//97~122=a~z
//65~90=A~Z
//95=_
    if (!((i<=57 && i>=48)||(i>=97 && i<=122)||(i>=65 && i<=90)||(i==95)||(i==8)||(i==9)||
(i==37)||(i==39)||(i==46)))
{
        //window.event.keyCode=27;
event.returnValue=false
return false;
    }
else
{
        //window.event.keyCode=keycode;
return true;
    }
}
//--------------------------------只允许输入字母、数字(动态判断)
function TextNumOnly(){
    var i= window.event.keyCode
//8=backspace
//9=tab
//37=left arrow
//39=right arrow
//46=delete
//48~57=0~9
//97~122=a~z
//65~90=A~Z
//95=_
    if (!((i<=57 && i>=48)||(i>=97 && i<=122)||(i>=65 && i<=90)||(i==8)||(i==9)||(i==37)||
(i==39)||(i==46)))
{
        //window.event.keyCode=27;
event.returnValue=false
return false;
    }
else
{
        //window.event.keyCode=keycode;
return true;
    }
}
//--------------------------------只允许输入数字(动态判断)
/**
*方法名:NumOnly()
*描述:只允许输入数字
*输入:空
*输出:空
**/
function NumOnly(){
    var i= window.event.keyCode
//8=backspace
//9=tab
//37=left arrow
//39=right arrow
//46=delete
//48~57=0~9
    if ((i>57 || i<48) && (i!=8) && (i!=9) && (i!= 37) && (i!=39) && (i!=46))
{
        window.event.keyCode=27;
return false;
    }
else
{
        //window.event.keyCode=keycode;
return true;
    }
}
//--------------------------------只能输入电话号码或者"-"或者"("或者")"
function TelOnly(){
    var i= window.event.keyCode
//8=backspace
//9=tab
//37=left arrow
//39=right arrow
//46=delete
//48~57=0~9
//40=(
//41=)
//45=-
//32=空格
    if ((i>57 || i<48) && (i!=8) && (i!=9) && (i!= 37) && (i!=39) && (i!=46) && (i!=40) &&
(i!=41) && (i!=45) && (i!=32))
{
        window.event.keyCode=27;
return false;
    }
else
{
        //window.event.keyCode=keycode;
return true;
    }
}
//========================================================================动态输入函数(结束
)
//========================================================================表单验证函数
//--------------------------------判断用户名(判断字符由字母和数字,下划线,点号组成.且开头
的只能是下划线和字母)
function isAccount(str)
{
if(/^[a-z]\w{3,}$/i.test(str))   //用户名由字母和数字、下划线组成,且只能以字母开头,且长
度最小为4位
//if(/^([a-zA-z]{1})([\w]*)$/g.test(str))//用户名由字母和数字、下划线组成,且只能以字母开

{
//alert(');
return true;
}
else
return false;
}
//--------------------------------判断只能输入中文、数字、字母
function isChinese(str)
{
var pattern = /^[0-9a-zA-Z\u4e00-\u9fa5]+$/i;
if (pattern.test(str))
{
return true;
}
else
{
//alert("只能包含中文、字母、数字");
return false;
}
}
//--------------------------------Email格式判断
function ismail(email)
{
return(new RegExp(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]
+$/).test(email));
}
//--------------------------------IP格式判断
function isip(s)
{
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;
}
//--------------------------------判断电话号码/手机号码
function PhoneCheck(s)
{
var str=s;
var reg=/(^[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}$)/;
//alert(reg.test(str));
return reg.test(str);
}
//--------------------------------判断手机号码
function isMobile(str)
{     
var reg=/^0{0,1}13[0-9]{9}$/;
return reg.test(str);
}
//--------------------------------短日期(如2003-12-05)
function isDate(str)
{
var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
if(r==null)
{
//alert('输入的信息不是日期格式(YYYY:MM:DD)');
return false;
}
if (r[1]<1 || r[3]<1 || r[3]-1>12 || r[4]<1 || r[4]>31)
{
//alert("日期格式(YYYY:MM:DD)不对");
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]);
}
//--------------------------------短时间(如13:04:06)
function isTime(str)
{
var a = str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/);
if (a == null)
{
//alert('输入的信息不是时间格式(HH:MM:SS)');
return false;
}
if (a[1]>23 || a[1]<0 || a[3]>60 || a[3]<0 || a[4]>60 || a[4]<0)
{
//alert("时间格式(0<=HH<23:0<=MM<60:0<=SS<60)不对");
return false
}
return true;
}
//--------------------------------长时间(如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)
{
//alert('输入的信息不是时间格式(YYYY-MM-DD HH:MM:SS)');
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]);
}
//========================================================================表单验证函数(结束
)
//========================================================================其它函数
//用于改变当前后台框架的尺寸(参数:对象,关闭时显示图片,打开时显示图片,关闭显示尺寸,打开显示
尺寸)
//     
例:this,'../images/openout.gif','../images/setby.gif','top.frame.cols=\'0,*\'','top.frame.c
ols=\'150,*\''
function changeFrame(ob,s1,s2,evalString1,evalString2)
{
if (ob.alt == "收起")
{
ob.alt = "展开";
ob.src = s1;
eval(evalString1);
}
else
{
ob.alt = "收起";
ob.src = s2;
eval(evalString2);
}
}
//用于全选/全不选(参数form=表单)
function CheckAll(form)    
{
for (var i=0;i<form.length;i++)    
    {    
var e = form[i];
if (e.type=="checkbox")
{
   if (e.name!="AllChoice")
   {
    if (form.AllChoice.checked==true)
    {
     if (e.disabled==false) e.checked=true;
    }
    else
    {
     if (e.disabled==false) e.checked=false;
    }
   }
}
    }    
}
//--------------------------------用户在button以外的页面元素中按回车-->转换-->按tab键
/**
*方法名:onKeyDownDefault
*描述:用户在button以外的页面元素中按回车,转换为按tab键
*输入:空
*输出:空
**/
function onKeyDownDefault()
{
    if (window.event.keyCode == 13 && window.event.ctrlKey == false && window.event.altKey
== false){
        if (window.event.srcElement.type != "button")
            window.event.keyCode = 9;
    }
    else{
        return true;
    }
}
// 修改编辑栏高度
function admin_Size(num,objname)
{
var obj=document.getElementById(objname)
if (parseInt(obj.rows)+num>=3) {
obj.rows = parseInt(obj.rows) + num;
}
if (num>0)
{
obj.width="90%";
}
}
//取得字符串中中文/汉字的个数
function getChineseNum(obstring)
{
var pattern = /^[\u4e00-\u9fa5]+$/i;
var maxL,minL;
maxL = obstring.length;    //原始长度
obstring = obstring.replace(pattern,"");
minL = obstring.length;    //处理后的长度
return (maxL - minL)
}

分享到:
评论

相关推荐

    js验证大全

    总结,JavaScript表单脚本输入验证是前端开发中的核心技能,涉及DOM操作、事件监听、正则表达式等多个方面。理解并熟练运用这些技术,可以创建出高效、安全的用户交互体验。在实际工作中,不断学习和使用新的验证...

    javascript 表单验证禁止输入中文汉字

    下面是一个简单的JavaScript函数,用于验证输入是否含有中文汉字: ```javascript function containsChinese(str) { var reg = /[\u4e00-\u9fff]/g; return reg.test(str); } ``` 在这个函数中,`reg` 是一个...

    常用表单验证脚本函数

    这篇博客"常用表单验证脚本函数"主要探讨了JavaScript中用于表单验证的一些关键函数和方法。通过学习这些函数,开发者可以创建更加健壮和用户友好的表单。 1. **required属性**:这是HTML5引入的一个特性,可以在...

    js表单验证 全网最全的 表单验证

    总结来说,这个资源集合提供了一系列关于JavaScript表单验证的方法和实例,包括基础的输入验证、电子邮件和URL验证,以及登录验证的实践。无论你是初学者还是经验丰富的开发者,都可以从中获取有价值的参考和灵感,...

    js带有登录提示验证的表单脚本代码

    总结,这个"js带有登录提示验证的表单脚本代码"项目涵盖了前端开发中关于表单设计、JavaScript验证、用户体验优化等多个方面的重要知识点。通过学习和应用这些技术,开发者可以创建出功能完善、用户体验良好的登录...

    常用的js表单验证脚本

    常用js表单验证....................

    JS表单验证与JS常见问题解决方案

    "JavaScript常见问题整理.txt"、"表单验证大全.txt"、"JavaScript表单验证控制代码大全.txt"、"JavaScript验证表单函数大全.txt"这些文件将提供更具体的信息和示例代码,帮助深入理解和掌握这一主题。

    页面输入前台JS验证通用脚本

    1. **事件处理**:JS脚本通常会监听表单元素的`onchange`、`onkeyup`或`onblur`事件,当用户改变输入或者离开输入框时触发验证。 2. **正则表达式**:正则表达式在前端验证中用于匹配特定的文本模式。开发者可以...

    js表单验证、js导出excel、js验证

    JS表单验证是在用户提交数据之前,于客户端执行的一系列检查,以确保输入的数据符合预设的规则,如非空、格式正确等。这可以减少无效请求,提高服务器效率,并为用户提供即时反馈。 1. 验证基本类型:JS提供了多种...

    validation js表单验证

    - **JavaScript表单验证**:JavaScript是一种在浏览器端运行的脚本语言,用于实现交互式的网页功能,包括表单验证。通过JavaScript,开发者可以在用户输入时实时检测数据的有效性,无需等待表单提交到服务器。 - **...

    一个完美的js表单验证案例

    "一个完美的js表单验证案例"利用JavaScript(特别是jQuery库)实现了这一功能,提供了高效、用户友好的验证机制。 JavaScript作为客户端脚本语言,可以直接在用户的浏览器上运行,这使得表单验证可以实时进行,减少...

    javascript之validate验证脚本

    9. **表单验证库**:除了手动编写验证脚本,还可以利用现有的JavaScript表单验证库,如jQuery Validation Plugin、Formik等,它们提供了丰富的验证规则和友好的API,能快速构建复杂的验证逻辑。 10. **跨域策略与...

    JavaScript表单验证脚本之淘宝沙发傲视

    "JavaScript表单验证脚本之淘宝沙发傲视"这个标题可能指的是一个专门针对淘宝网站,或者至少是以淘宝为例的,用于表单验证的JavaScript脚本。虽然描述中的文字看起来像是随机字符组合,但我们可以从中提取出与...

    全面的js表单验证包含正则表达式还有本人写的表单验证

    正则表达式是一种强大的文本匹配工具,常用于验证输入的格式。例如: - 邮箱验证:`/^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$/` - 电话号码验证:`/^1[3-9]\d{9}$/` - 密码强度验证:`/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{6...

    js表单验证代码 很全很强大

    总的来说,JavaScript表单验证代码库提供了一套完整的解决方案,帮助开发者轻松实现对用户输入的验证,提升网站或应用的用户体验和数据质量。开发者在实际使用时,需要根据项目需求选择合适的验证规则,配置错误提示...

    常用的表单提交验证脚本

    常用的表单提交javascript验证脚本,有详细的使用说明

    通用的JS表单验证

    "通用的JS表单验证"这个主题聚焦于如何利用JavaScript来确保用户在网页表单中输入的数据符合预设的规则,从而提高数据质量和用户体验。下面我们将深入探讨这个话题。 首先,表单验证是网页开发中的关键部分,它能...

    网页用户注册表单校验JavaScript脚本代码源码下载

    //获取到input标签框框里面输入的值,是一个字符串 var regExp = new RegExp("^\\w*$","gm");//一定要写上开头^和结尾$不然匹配上后,没办法排除别的,要打上*号,表示可以0个以上匹配的字符 var ismacth=regExp....

    表单验证js 提交前验证

    本压缩包包含了一个名为"validateForm.js"的JavaScript文件以及一份"表单验证说明.txt"的文本文件,它们专门用于实现前端的表单验证功能。 `validateForm.js` 是一个JavaScript函数库,它提供了对HTML表单字段的...

Global site tag (gtag.js) - Google Analytics