- 浏览: 611966 次
- 性别:
- 来自: 卡哇伊
文章分类
- 全部博客 (299)
- C# (25)
- Java (1)
- WinForm (0)
- Asp.Net (86)
- Jsp (2)
- Php (1)
- Web Service (0)
- Desgin Patterns (19)
- Data Structure & Algorithms (1)
- SQLserver (41)
- Mysql (0)
- Oracle (2)
- Javascript (50)
- Ajax (10)
- Jquery (1)
- Flex (0)
- Regular Expression (5)
- DIV+CSS+XHTML+XML (18)
- Software Test (0)
- Linux (0)
- Utility (17)
- Net Digest (4)
- windows 2003 (10)
- Other (4)
- English (1)
- IT Term (1)
最新评论
-
w497480098h:
学习了 很好谢谢
SQL Server下无限多级别分类查询解决办法(简单查询树形结构数据库表) -
main_fun:
确实不错
iframe自适应高度 -
jveqi:
...
DBA -
mxcie:
其它版本没有确认,今天使用vs2003时,其.sln文件也需要 ...
彻底删除项目的VSS源代码管理信息 -
moneyprosper:
就只有IE支持,火狐和谷歌都不支持此种方法。正在寻找中。。。
从父页面读取和操作iframe中内容方法
表单的验证一直是网页设计者头痛的问题,表单验证类 Validator就是为解决这个问题而写的,旨在使设计者从纷繁复杂的表单验证中解放出来,把精力集中于网页的设计和功能上的改进上。
本人写了一些CheckList 对于一些常用的校验几乎都有,已经写成函数,大家用的时候只要直接调用即可.
代码如下:
欢迎转载但请保留版权
//****************************************************************** /**//* *JavaScript Document * <p>タイトル: JS常用処理函数</p> * <p>説明: JS常用処理函数</p> * <p>著作権: Copyright (c) 2007-4-30</p> * <p>会社: 杭州恒生電子株式会社</p> * @担当者: 林顔双 * @version 1.0 * 由于本人日语能力有限及时间仓促没有写日文注释中文部门可能会出现乱码现象 * 在GB2312编码格式下可正常显示此文档,代码编写过程难免有错误,错误之处欢迎指正 * ******函数説明****** * * isEmail(emailStr) //邮件校验,通过校验返回ture,否则返回false * isIp(strIp) //IP地址校验,输入正确的IP地址返回ture,否则返回false * isTelphoneNum(telNum) //电话号码校验,正确的电话号码(如0571-1234567[8] 010-1234567[8] )则返回ture,否则返回false * isMobilephoneNum(mobileNum) //手机号码校验,正确的手机号码(如:13800571506 013800571505)则返回ture,否则返回false * isDigital(str) //纯数字验证输入,输入为纯数字则返回ture,否则返回false * card(id) //18位身份证验证,输入正确的号码返回ture,否则返回false * matchPattern(value,mask) //自定义规则,mask为正确的正则表达式,返回通过自定义验证的字符串 * isEnglish(name) //判断是否为英文,正确返回ture,否则返回false * isChinese(name) //判断是否为中文,正确返回 ture,否则返回false * contain(str,charset) //非法字符判断,str中有charset则返回ture, * testSelect() //选中文本框或文本域文本,在input位置加上 onClick/onFocus="textSelect();" 即可 * textOnly() //只允许输入数字 字母 下划线,在input位置加上 onkeypress="textOnly()" 即可 * isURL(URL) //判断URL,正确的URL返回true,否则返回false * isDate(date) //判断是否为短日期(如:2003-(/)12-(/)05),正确返回,否则返回false * isTime(time) //判断是否为短时间(如:HH:MM:SS) * enterToTab() //在表单元素中除button外,按回车键模拟TAB功能 * enterTOSubmit(name) //在填写表单时按回车键提交表单,name为sumbit控件名 * isFloat(float,index) //判断是否为浮点数,并且小数点后面为index位,正确返回true * trimFullSpace(strIn) //返回去前后全角半角空格后的字符串 * //校验密码复杂度,密码由数字,大小写字母,特殊字符中的任意三种组合,通过则返回true * checkPassWord(passWord,maxLen) //由三个函数组成checkPassWord(),charMode(),bitTotal() * maxLength(strin,maxLen) //判断字符最大长度,如果strin的长度不大于maxLen返回tur * minLength(strin,minLen) //判断字符最小长度,如果的长度不小于minLen返回ture * isAccount(str) //判断用户名合法性(字母 数字式下划先组成且只能以字母开头,且长度最小为6位),合法返回true,否则返回false * getChineseNum(obstring) //取得字符串中中文字的个数 * isInteger(str) //判断输入的字符是否为Integer类型,是则返回true,否则返回false * isDouble(str) //判断输入的字符是否为Double类型,是则返回true,否则返回false */ //******************************************************************* //邮件校验 //通过校验返回ture,否则返回false function isEmail(emailStr) ...{ if (emailStr.length == 0) ...{ return fasle; } else ...{ var emailPat=/^(.+)@(.+)$/; var specialChars="\(\)<>@,;:\\\"\.\[\]"; var validChars="[^\s" + specialChars + "]"; var quotedUser="("[^"]*")"; var ipDomainPat=/^(d...{1,3})[.](d...{1,3})[.](d...{1,3})[.](d...{1,3})$/; var atom=validChars + '+'; var word="(" + atom + "|" + quotedUser + ")"; var userPat=new RegExp("^" + word + "(\." + word + ")*$"); var domainPat=new RegExp("^" + atom + "(\." + atom + ")*$"); var matchArray=emailStr.match(emailPat); if (matchArray == null) ...{ return false; } var user=matchArray[1]; var domain=matchArray[2]; if (user.match(userPat) == null) ...{ return false; } var IPArray = domain.match(ipDomainPat); if (IPArray != null) ...{ for (var i = 1; i <= 4; i++) ...{ if (IPArray[i] > 255) ...{ return false; } } return true; } var domainArray=domain.match(domainPat); if (domainArray == null) ...{ return false; } var atomPat=new RegExp(atom,"g"); var domArr=domain.match(atomPat); var len=domArr.length; if ((domArr[domArr.length-1].length < 2) || (domArr[domArr.length-1].length > 3)) ...{ return false; } if (len < 2) ...{ return false; } return true; } } //IP地址校验 //正确的IP地址回ture,否则返回false function isIp(strIp) ...{ var ipDomainPat=/^((2[0-4]d|25[0-5]|[01]?dd?).)...{3}(2[0-4]d|25[0-5]|[01]?dd?)$/; var matchArray=strIp.match(ipDomainPat); if(matchArray!=null)...{ return true; } } //电话号码校验 //正确的电话号码(包括区号和“-”如0571-1234567[8] 010-1234567[8] )则返回ture,否则返回false function isTelphoneNum(telNum)...{ var telphoneNumPat=/^0d...{2}-d...{7,8}|0d...{3}-d...{7,8}$/; var matchArray=telNum.match(telphoneNumPat); if(matchArray!=null)...{ return true; } } //手机号码校验 //正确的手机号码(如:13800571506 013800571505)则返回ture,否则返回false function isMobilephoneNum(mobileNum)...{ var mobilephoneNumPat=/^1d...{10}|01d...{10}$/; var matchArray=mobileNum.match(mobilephoneNumPat); if(matchArray!=null)...{ return true; } } //纯数字验证输入,输入为纯数字则返回ture,否则返回false function isDigital(str)...{ var digitalPot=/^d*$/; var matchArray=str.match(digitalPot); if(matchArray!=null)...{ return true; } } //18位身份证验证,输入正确的号码返回ture,否则返回false function card(id)...{ var Wi=new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); var ai="10X98765432"; var sum=0 var ssum=0; //alert(id.charAt(i)); for(var i=0;i<17;i++)...{ ssum=eval(Wi[i]*id.charAt(i)); sum=ssum+sum; } var modNum=sum%11; if(ai.charAt(modNum)==id.charAt(17))...{ return true; } } //自定义规则,mask为正确的正则表达式 //返回通过自定义验证的字符串 function matchPattern(value,mask) ...{ return mask.exec(value); } //判断是否为英文,正确返回ture,否则返回false function isEnglish(name) ...{ if(name.length == 0) return false; for(i = 0; i < name.length; i++) ...{ if(name.charCodeAt(i) > 128) return false; } return true; } //判断是否为中文,正确返回 ture,否则返回false function isChinese(name) ...{ if(name.length == 0) return false; for(i = 0; i < name.length; i++) ...{ if(name.charCodeAt(i) > 128) return true; } return false; } //非法字符判断,str中有charset则返回ture, function contain(str,charset)...{ var i; for(i=0;i<charset.length;i++)...{ if(str.indexOf(charset.charAt(i))>=0)...{ return true; } return false; } } //选中文本框或文本域文本,在input位置加上 onClick/onFocus="textSelect();" 即可 function textSelect() ...{ 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; } } //判断URL,正确的URL返回true,否则返回false function isURL(URL)...{ var urlPat=/^http://[A-Za-z0-9]+.[A-Za-z0-9]+[/=?%-&_~`@[]':+!]*([^<>""])*$/; var matchArray=URL.match(urlPat); if(matchArray!=null){ return true; } else { return false; } } //判断短日期(如2003-12-05) function isDate(date){ var r = date.match(/^(d{1,4})(-|/)(d{1,2})(d{1,2})$/); if(r==null){ return false; } if (r[1]<1 || r[3]<1 || r[3]-1>12 || r[4]<1 || r[4]>31) { return false } var d= new Date(r[1], r[3]-1, r[4]); if(d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]){ return true; } } //判断短时间(HH:MM:SS) function isTime(time){ var a = time.match(/^(d{1,2})(:)?(d{1,2})(d{1,2})$/); if (a == null) { return false; } if (a[1]>23 || a[1]<0 || a[3]>60 || a[3]<0 || a[4]>60 || a[4]<0){ return false } return true; } //在表单元素中除button外,按回车键模拟TAB功能 function enterToTab(){ 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; } } //在填写表单时按回车键提交表单,name为sumbit控件名 function enterTOSubmit(name) { if (window.event.keyCode == 13 && window.event.ctrlKey == false && window.event.altKey == false){ var objSubmit=document.getElementById(name); objSubmit.focus; } else { return true; } } //返回去前后全角半角空格后的字符串 function trimFullSpace(strIn) { if (strIn == null){ return null; } else { var len = strIn.length; var start = 0; var end = strIn.length; for (var i = 0; i < len; i++){ if (strIn.charAt(i) == ' ' || strIn.charAt(i) == ' '){ start++; } else { break; } } for (var i = len - 1; i > -1; i--){ if (strIn.charAt(i) == ' '|| strIn.charAt(i) == ' '){ end--; } else { break; } } if (start >= end){ return ""; } else { return strIn.substring(start, end); } } } //判断是否为浮点数,并且小数点后面为index位,正确返回true function isFloat(float,index){ var floatPat=/^(d{1,})[.](d{1,})$/; var matchArray=float.match(floatPat); if(matchArray!=null) { if(matchArray[2].length==index){ return true; } } } //判断字符最大长度,如果strin的长度不大于maxLen返回ture function maxLength(strin,maxLen) { var len=0; for(var i=0;i<strin.length;i++) { if(strin.charCodeAt(i)>256) { len += 2; } else { len++; } } if(len<=maxLen){ return true; } } //判断字符最小长度,如果的长度不小于minLen返回ture function minLength(strin,minLen) { var len=0; for(var i=0;i<strin.length;i++) { if(strin.charCodeAt(i)>256) { len += 2; } else { len++; } } if(len>=maxLen){ return true; } } //由三个函数组成checkPassWord(),charMode(),bitTotal() //校验密码复杂度,密码由数字,大小写字母,特殊字符中的任意三种组合,通过则返回true function checkPassWord(passWord,maxLen){ if (passWord.length<=maxLen) return false; //密码太短 Modes=0; for (i=0;i<passWord.length;i++){ //测试一个字符并判断一共有多少种模式. Modes|=charMode(passWord.charCodeAt(i)); } return bitTotal(Modes); } //CharMode函数 //判断某个字符是属于哪一种类型. function charMode(iN){ if (iN>=48 && iN <=57) //数字 return 1; if (iN>=65 && iN <=90) //大写字母 return 2; if (iN>=97 && iN <=122) //小写 return 4; else return 8; //特殊字符 } //bitTotal函数 //计算出当前密码当中一共有多少种模式 function bitTotal(num){ modes=0; for (i=0;i<4;i++){ if (num & 1) modes++; num>>>=1; } if(modes==3){ return true } } //判断是否为合法的用户名,合法返回true,否则返回flase //用户名由字母和数字、下划线组成,且只能以字母开头,且长度最小为6位 function isAccount(str){ if(/^[a-z]w{3,}$/i.test(str)) { return true; } else { return false; ] } //取得字符串中中文字的个数 function getChineseNum(obstring){ var pattern = /^[一-龥]+$/i; var maxL,minL; maxL = obstring.length; obstring = obstring.replace(pattern,""); minL = obstring.length; return (maxL - minL) } //判断输入的字符是否为Integer类型,是返回true,否则返回false function isInteger(str){ var integerPat=/^[-+]?d+$/; var matchArray=str.match(integerPat); if(matchArray!=null){ return true; } else { return false; } } //判断输入的字符是否为Double类型,是返回true,否则返回false function isDouble(str){ var doublePat=/^[-+]?d+(.d+)?$/; var matchArray=str.match(doublePat); if(matchArray!=null){ return true; } else { return false; } }
发表评论
-
简单选项卡制作方式
2009-10-26 15:16 1027<!DOCTYPE html PUBLIC " ... -
字体放大效果,字体[大][中][小]
2009-10-20 16:12 1083<!DOCTYPE html PUBLIC " ... -
JS中保留两位小数
2009-10-19 11:22 3221//这里使用字符串的"123.0000" ... -
JS中String,Date,Math常用函数
2009-10-11 18:25 3711String,Date,Math常用函数 ... -
eval,confirm,alert,prompt函数
2009-10-11 12:23 1489eval()函数JavaScript有许多小窍门来使编程更加容 ... -
从零开始学习jQuery(剧场版) 你必须知道的javascript
2009-10-03 11:28 879一.摘要 本文是jQuery系列教程的剧场版, 即和jQue ... -
深入浅出JSON
2009-10-02 20:27 689JSON定义 JSON(JavaScript Objec ... -
数据类型和Json格式
2009-10-02 19:53 9061. 前几天,我才知 ... -
防止网页被嵌入框架的代码
2009-10-02 17:31 912<script type="text/java ... -
学习javascrip闭包 (closure)
2009-10-02 16:53 877闭包(closure)是Javascript语言的一个难点 ... -
花点时间搞清top、postop、scrolltop、scrollHeight、offsetHeight
2009-09-30 18:41 17521. top 此属性仅仅在对象的定位(position ... -
document.write()和document.writeln()的区别
2009-09-18 11:06 8197解决思路: 两者都是JavaScript向客户端输出的方法,对 ... -
几个常用的小函数(检查是否为数字,否为电话号码,num是否是负数,检查是否为日期...)
2009-09-10 17:41 1164//函数名:chkemail//功能介绍:检查是否为Email ... -
为什么二月的天数比其他月少?
2009-09-06 09:10 1491——公元前46年,罗马皇帝恺撒在修改历法时,规定每年为12个月 ... -
iframe自适应高度
2009-09-01 23:40 3271Demo页面:主页面 iframe_a ... -
document.body和document.documentElement的区别
2009-09-01 22:25 2393document.body:是DOM中Document对象里的 ... -
从父页面读取和操作iframe中内容方法
2009-08-27 20:50 3666基本的操作方法: ... -
JsTAB选项卡示例集合(二)
2009-08-15 23:25 1820仿163的一款TAB选项卡,有的人也称它为网页标签。本标签用到 ... -
Js Tab选项卡示例集合
2009-08-15 23:22 7967清新选项卡(一个页面布局两个) 一个横排的清新选项卡, ... -
Js事件列表
2009-08-15 20:41 904js事件列表 onkeypress,onkeyd ...
相关推荐
表单的验证一直是网页设计者头痛的问题,表单验证类 Validator就是为解决这个问题而写的,旨在使设计者从纷繁复杂的表单验证中解放出来,把精力集中于网页的设计和功能上的改进上。 本人写了一些CheckList 对于...
附件二:DRP真切换回切保障checklist v1.0.xlsx
标题中的"Python库 | plonehrm.checklist-1.0.tar.gz"表明这是一个基于Python的库,名为`plonehrm.checklist`,版本为1.0,并且被打包成`.tar.gz`格式的文件。`.tar.gz`是Linux和Unix环境中常见的归档和压缩格式,...
单板专项审查checklist_V1.0b3295e.xlsx
02.HiLink SDK 集成开发checklist_v1.0,hilink智能家居系统
19B_C11影响业务告警checklist_V1.0(发布版).xlsx
该Checklist的内容非常丰富,涵盖了输入验证、输出编码、身份认证、异常处理、会话管理、访问控制、权限控制、敏感信息、运行环境、以及常见web安全防护等多个方面的安全控制。这些内容对于金融科技产品的安全性至关...
"硬件设计SCH&PCB CHECK LIST-V1.0" 是一份详细的检查清单,旨在确保这两个设计阶段的质量和合规性。这份CheckList涵盖了从设计初期到最终生产的所有关键步骤,以防止潜在的问题和错误。 在原理图设计CheckList中,...
20A EPS FB问题快速排查Checklist v1.2.xlsx20A EPS FB问题快速排查Checklist v1.2.xlsx20A EPS FB问题快速排查Checklist v1.2.xlsx20A EPS FB问题快速排查Checklist v1.2.xlsx20A EPS FB问题快速排查Checklist v1.2...
常用 表单验证JSCheckList.js
账号安全风险检查表单-checklist
MT2503_Schematics_PCB_Checklist_V1.0.rar MT2503_Schematics_PCB_Checklist_V1_0.xlsx MT2503_下载_开机_debug_SOP.pdf MT2503A Data Sheet v0.1.pdf 最新写号工具SN_Writer_tool_exe_v1.0_1544.00_All_In_One.rar
云学堂功能验证手册V1.0 云学堂基础知识培训 云学堂安装包升级包汇总 云学堂实施checkList1.0 云学堂开局指导V1.0 云学堂故障处理手册V1.0 云学堂教师背景桌面V1.0 云学堂日常使用注意事项V1.0 云学堂日常...
DSM记事本是功能最全、使用最便捷、非常有趣的记事本应用程序,您可以创建文本、图片、视频...DSM记事本 v1.0.33 for Android更新: 1.修复日程记事不能进行备份恢复的问题 2.高级服务的日历插件添加自动更新升级功能
【中美海关C-TPAT联合验证Checklist宣贯】是一个重要的文档,主要涉及跨国贸易中的供应链安全标准。C-TPAT(Customs-Trade Partnership Against Terrorism)是美国海关与边境保护局(CBP)推出的一项自愿性计划,...
9. **验证**:使用仿真工具进行功能验证,确保设计符合规格。进行形式验证以证明特定的属性。使用混合信号和射频(RF)仿真来处理非数字部分。 10. **封装与封装设计**:考虑封装类型、引脚分配、热模拟、EMC/EMI...
AWS MSP计划的验证清单(Checklist)要求合作伙伴根据自己的能力评估填写,并将作为与AWS进行能力审核讨论的基础。审核过程将由一个客观的第三方审计公司执行,以合作伙伴选择的语言和地点进行,这可能会产生相关的...
GDPR DPA Checklist v.1.2.pdf
IC设计工程师必备checklist详细(英文版)
V8:弹性要求”部分为基础,进一步对其进行扩展并将其调整到不同的范围:JavaScript软件保护-不仅适用于具有JavaScript的移动应用程序,而且实际上还适用于任何其他基于JavaScript的应用程序(例如Web,Node.js),...