N个必备的实用jQuery代码段
程序员文章站
2024-01-22 16:16:28
都是网上找的 整理一下 一起学习 方便以后好用 感谢各位大佬的分享! ......
都是网上找的 整理一下 一起学习 方便以后好用 感谢各位大佬的分享!
jQuery(function() { /* <input type="password" name="pass" id="pass" /> <span id="passstrength"></span>*/ //下面的正则表达式建议各位收藏哦,项目上有可能会用得着 $('#pass').keyup(function(e) { //密码为八位及以上并且字母数字特殊字符三项都包括 var strongRegex = new RegExp("^(?=.{8,})(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*\\W).*$", "g"); //密码为七位及以上并且字母、数字、特殊字符三项中有两项,强度是中等 var mediumRegex = new RegExp("^(?=.{7,})(((?=.*[A-Z])(?=.*[a-z]))|((?=.*[A-Z])(?=.*[0-9]))|((?=.*[a-z])(?=.*[0-9]))).*$", "g"); var enoughRegex = new RegExp("(?=.{6,}).*", "g"); if (false == enoughRegex.test($(this).val())) { $('#passstrength').html('More Characters'); } else if (strongRegex.test($(this).val())) { $('#passstrength').className = 'ok'; $('#passstrength').html('Strong!'); } else if (mediumRegex.test($(this).val())) { $('#passstrength').className = 'alert'; $('#passstrength').html('Medium!'); } else { $('#passstrength').className = 'error'; $('#passstrength').html('Weak!'); } return true; }); /*检查图片是否加载完成*/ $('img').load(function () { console.log('image load successful'); }); /*.鼠标悬停(hover)切换 class 属性*/ $('.btn').hover(function () { $(this).addClass('hover'); }, function () { $(this).removeClass('hover'); }); /* 禁用 input 字段 有时你可能需要禁用表单的 submit 按钮或者某个 input 字段,直到用户执行了某些操作 (例如,检查“已阅读条款”复选框)。可以添加 disabled 属性,直到你想启用它时: */ $('input[type="submit"]').prop('disabled', true); /*你要做的就是执行 removeAttr 方法,并把要移除的属性作为参数传入:*/ $('input[type="submit"]').removeAttr('disabled'); /*让两个 DIV 高度相同*/ var $columns = $('.column');var height = 0; $columns.each(function () { if ($(this).height() > height) { height = $(this).height(); } }); $columns.height(height); /* 替换元素*/ $(document).ready(function() { $('#id').replaceWith('<DIV>I have been replaced</DIV>'); }); /*验证元素是否为空*/ $(document).ready(function() { if ($('#id').html()) { // do something } }); /*移除单词功能*/ $(document).ready(function() { var el = $('#id'); el.html(el.html().replace(/word/ig, "")); }); /*使整个DIV可点击*/ $(document).ready(function() { $("div").click(function(){ //get the url from href attribute and launch the url window.location=$(this).find("a").attr("href"); return false; });// how to use<DIV><A href="index.html">home</A></DIV>}); }); /*页面load方法*/ $().ready(function() { }) /*div隐藏操作*/ // div是否隐藏 function isHideMenu(){ return $("#menuContent").is(":hidden") } // 隐藏div mainFrameset.hide(); // 显示div mainFrameset.show(); /* 匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* 评注:表单验证时很实用 匹配网址URL的正则表达式:[a-zA-z]+://[^s]* 评注:网上流传的版本功能很有限,上面这个基本可以满足需求 匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 评注:表单验证时很实用 匹配国内电话号码:d{3}-d{8}|d{4}-d{7} 评注:匹配形式如 0511-4405222 或 021-87888822 匹配腾讯QQ号:[1-9][0-9]{4,} 评注:腾讯QQ号从10000开始 匹配中国邮政编码:[1-9]d{5}(?!d) 评注:中国邮政编码为6位数字 匹配身份证:d{15}|d{18} 评注:中国的身份证为15位或18位 匹配ip地址:d+.d+.d+.d+ 评注:提取ip地址时有用 匹配特定数字: ^[1-9]d*$ //匹配正整数 ^-[1-9]d*$ //匹配负整数 ^-?[1-9]d*$ //匹配整数 ^[1-9]d*|0$ //匹配非负整数(正整数 + 0) ^-[1-9]d*|0$ //匹配非正整数(负整数 + 0) ^[1-9]d*.d*|0.d*[1-9]d*$ //匹配正浮点数 ^-([1-9]d*.d*|0.d*[1-9]d*)$ //匹配负浮点数 ^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$ //匹配浮点数 ^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$ //匹配非负浮点数(正浮点数 + 0) ^(-([1-9]d*.d*|0.d*[1-9]d*))|0?.0+|0$ //匹配非正浮点数(负浮点数 + 0) 评注:处理大量数据时有用,具体应用时注意修正 匹配特定字符串: ^[A-Za-z]+$ //匹配由26个英文字母组成的字符串 ^[A-Z]+$ //匹配由26个英文字母的大写组成的字符串 ^[a-z]+$ //匹配由26个英文字母的小写组成的字符串 ^[A-Za-z0-9]+$ //匹配由数字和26个英文字母组成的字符串 ^w+$ //匹配由数字、26个英文字母或者下划线组成的字符串 在使用RegularExpressionValidator验证控件时的验证功能及其验证表达式介绍如下: 只能输入数字:“^[0-9]*$” 只能输入n位的数字:“^d{n}$” 只能输入至少n位数字:“^d{n,}$” 只能输入m-n位的数字:“^d{m,n}$” 只能输入零和非零开头的数字:“^(0|[1-9][0-9]*)$” 只能输入有两位小数的正实数:“^[0-9]+(.[0-9]{2})?$” 只能输入有1-3位小数的正实数:“^[0-9]+(.[0-9]{1,3})?$” 只能输入非零的正整数:“^+?[1-9][0-9]*$” 只能输入非零的负整数:“^-[1-9][0-9]*$” 只能输入长度为3的字符:“^.{3}$” 只能输入由26个英文字母组成的字符串:“^[A-Za-z]+$” 只能输入由26个大写英文字母组成的字符串:“^[A-Z]+$” 只能输入由26个小写英文字母组成的字符串:“^[a-z]+$” 只能输入由数字和26个英文字母组成的字符串:“^[A-Za-z0-9]+$” 只能输入由数字、26个英文字母或者下划线组成的字符串:“^w+$” 验证用户密码:“^[a-zA-Z]w{5,17}$”正确格式为:以字母开头,长度在6-18之间, 只能包含字符、数字和下划线。 验证是否含有^%&',;=?$"等字符:“[^%&',;=?$x22]+” 只能输入汉字:“^[u4e00-u9fa5],{0,}$” 验证Email地址:“^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$” 验证InternetURL:“^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$” 验证电话号码:“^((d{3,4})|d{3,4}-)?d{7,8}$” 正确格式为:“XXXX-XXXXXXX”,“XXXX-XXXXXXXX”,“XXX-XXXXXXX”, “XXX-XXXXXXXX”,“XXXXXXX”,“XXXXXXXX”。 验证身份证号(15位或18位数字):“^d{15}|d{}18$” 验证一年的12个月:“^(0?[1-9]|1[0-2])$”正确格式为:“01”-“09”和“1”“12” 验证一个月的31天:“^((0?[1-9])|((1|2)[0-9])|30|31)$” 正确格式为:“01”“09”和“1”“31”。 匹配中文字符的正则表达式: [u4e00-u9fa5] 匹配双字节字符(包括汉字在内):[^x00-xff] 匹配空行的正则表达式:n[s| ]*r 匹配HTML标记的正则表达式:/< (.*)>.*|< (.*) />/ 匹配首尾空格的正则表达式:(^s*)|(s*$) 匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* 匹配网址URL的正则表达式:http://([w-]+.)+[w-]+(/[w- ./?%&=]*)? (1)应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) String.prototype.len=function(){return this.replace([^x00-xff]/g,"aa").length;} (2)应用:javascript中没有像vbscript那样的trim函数,我们就可以利用这个表达式来实现 String.prototype.trim = function() { return this.replace(/(^s*)|(s*$)/g, ""); } (3)应用:利用正则表达式分解和转换IP地址 function IP2V(ip) //IP地址转换成对应数值 { re=/(d+).(d+).(d+).(d+)/g //匹配IP地址的正则表达式 if(re.test(ip)) { return RegExp.$1*Math.pow(255,3))+RegExp.$2*Math.pow(255,2))+RegExp.$3*255+RegExp.$4*1 } else { throw new Error("Not a valid IP address!") } } /* (5)应用:利用正则表达式限制网页表单里的文本框输入内容 用正则表达式限制只能输入中文:onkeyup="value="/blog/value.replace(/["^u4E00-u9FA5]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))" 用正则表达式限制只能输入全角字符: onkeyup="value="/blog/value.replace(/["^uFF00-uFFFF]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^uFF00-uFFFF]/g,''))" 用正则表达式限制只能输入数字:onkeyup="value="/blog/value.replace(/["^d]/g,'') "onbeforepaste= "clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))" 用正则表达式限制只能输入数字和英文:onkeyup="value="/blog/value.replace(/[W]/g,"'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,'' */ //正则匹配 // 匹配中文字符的正则表达式: [/u4e00-/u9fa5] // 匹配双字节字符(包括汉字在内):[^/x00-/xff] // 匹配空行的正则表达式:/n[/s| ]*/r // 匹配HTML标记的正则表达式:/<(.*)>.*<///1>|<(.*) //>/ // 匹配首尾空格的正则表达式:(^/s*)|(/s*$)(像vbscript那样的trim函数) // 匹配Email地址的正则表达式:/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)* // 匹配网址URL的正则表达式:http://([/w-]+/.)+[/w-]+(/[/w- ./?%&=]*)? /* 以下是例子: 利用正则表达式限制网页表单里的文本框输入内容: 用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^/u4E00-/u9FA5]/g,‘‘)" onbeforepaste="clipboardData.setData(‘text‘,clipboardData.getData(‘text‘).replace(/[^/u4E00-/u9FA5]/g,‘‘))" 1.用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^/uFF00-/uFFFF]/g,‘‘)" onbeforepaste="clipboardData.setData(‘text‘,clipboardData.getData(‘text‘).replace(/[^/uFF00-/uFFFF]/g,‘‘))" 2.用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^/d]/g,‘‘) "onbeforepaste="clipboardData.setData(‘text‘,clipboardData.getData(‘text‘).replace(/[^/d]/g,‘‘))" 3.用正则表达式限制只能输入数字和英文:onkeyup="value=value.replace(/[/W]/g,‘‘) "onbeforepaste="clipboardData.setData(‘text‘,clipboardData.getData(‘text‘).replace(/[^/d]/g,‘‘))" */ //onkeyup限制输入框只能输入数字 $('input#box').keyup(function(){ var c=$(this); if(/[^\d]/.test(c.val())){//替换非数字字符 var temp_amount=c.val().replace(/[^\d]/g,''); $(this).val(temp_amount); } }) function trim(inputstr) //去处空格,在获取客户端录入的表单信息前, //都先trim一下再提交 例如:“form1.org_name.value = trim(form1.org_name.value);” { if(!inputstr.length>0) return ""; var starts=0; var ends=inputstr.length; while(starts<ends) { if(inputstr.substring(starts,starts+1)==" ") starts++; else break; } while(starts<ends) { if(inputstr.substring(ends-1,ends)==" ") ends--; else break; } return inputstr.substring(starts,ends); } function isvalidcode(inputs) //校验邮政编码 { var i,temp; var isvalidcode = true; inputstr=trim(inputs); if(inputstr.length==null||inputstr.length==0||inputstr.length!=6) return false; for(i=0;i<inputstr.length;i++) { temp=inputstr.substring(i,i+1); if(!(temp>="0" && temp<="9")) { isvalidcode=false; break; } } return isvalidcode; } function isvalidtel(inputs) //校验电话号码 { var i,temp; var isvalidtel = true; inputstr=trim(inputs); if(inputstr.length==null||inputstr.length==0) return false; for(i=0;i<inputstr.length;i++) { temp=inputstr.substring(i,i+1); if(!(temp>="0" && temp<="9" || temp=="-")) { isvalidtel=false; break; } } return isvalidtel; } function isrealnum(inputs) //校验实数(含小数点) { var i,temp; var isrealnum = true; inputstr=trim(inputs); if(inputstr.length==null||inputstr.length==0) return false; for(i=0;i<inputstr.length;i++) { temp=inputstr.substring(i,i+1); if(!(temp>="0" && temp<="9" || temp==".")) { isrealnum=false; break; } } return isrealnum; } function isnumeric(inputs) //校验是否整数 { var i,temp; var isnumeric = true; inputstr=trim(inputs); if(inputstr.length==null||inputstr.length==0) return false; //isvalid = true; for(i=0;i<inputstr.length;i++) { temp=inputstr.substring(i,i+1); if(!(temp>="0" && temp<="9")) { isnumeric=false; break; } } return isnumeric; } function isvalidide(inputs) //校验身份证 { var i,temp; var isvalidide = true; inputstr=trim(inputs); if(inputstr.length == null || inputstr.length == 0 || (inputstr.length != 15 && inputstr.length != 18)) return false; for(i=0;i<inputstr.length;i++) { temp=inputstr.substring(i,i+1); if(!((temp>="0" && temp<="9") || temp == "x" || temp == "X")) { isvalidide=false; break; } } return isvalidide; } function isvalidname(inputs) //校验账号2~15位(即只能是英文字母和数字组成的串) { var i,temp; var isvalidname = true; inputstr=trim(inputs); if(inputstr.length==null || inputstr.length==0 || inputstr.length > 15 || inputstr.length < 2) return false; for(i=0;i<inputstr.length;i++) { temp=inputstr.substring(i,i+1); if(!((temp>= "0" && temp <= "9") || (temp >= "a" && temp<= "z") || (temp >= "A" && temp <= "Z"))) { isvalidname=false; break; } } return isvalidname; } function isvalidphoto(inputs) //校验照片扩展名 { var i,temp; var isvalidphoto = true; inputstr=trim(inputs); if(inputstr.length==null || inputstr.length==0) return true; //没有相片也允许的 temp=inputstr.substring(inputstr.lastIndexOf(".")+1); temp = temp.toLowerCase(); if(!(temp == "bmp" || temp == "jpg" || temp == "gif")) { isvalidphoto=false; } return isvalidphoto; } function isvalidzgh(inputs) //校验职工号8位(即只能是英文字母和数字组成的串) { var i,temp; var isvalidzgh = true; inputstr=trim(inputs); if(inputstr.length==null || inputstr.length==0 || inputstr.length != 8) return false; for(i=0;i<inputstr.length;i++) { temp=inputstr.substring(i,i+1); if(!((temp>= "0" && temp <= "9") || (temp >= "a" && temp<= "z") || (temp >= "A" && temp <= "Z"))) { isvalidzgh=false; break; } } return isvalidzgh; } function isvalidxh(inputs) //校验学号7位(即只能是英文字母和数字组成的串) { var i,temp; var isvalidxh = true; inputstr=trim(inputs); if(inputstr.length==null || inputstr.length==0 || inputstr.length != 7) return false; for(i=0;i<inputstr.length;i++) { temp=inputstr.substring(i,i+1); if(!((temp>= "0" && temp <= "9") || (temp >= "a" && temp<= "z") || (temp >= "A" && temp <= "Z"))) { isvalidxh=false; break; } } return isvalidxh; } function isvalidkcid(inputs) //校验课程编号5位(即只能是数字组成的串) { var i,temp; var isvalidkcid = true; inputstr=trim(inputs); if(inputstr.length==null||inputstr.length==0||inputstr.length!=5) return false; for(i=0;i<inputstr.length;i++) { temp=inputstr.substring(i,i+1); if(!(temp>="0" && temp<="9")) { isvalidkcid=false; break; } } return isvalidkcid; } function isvalidnamee(inputs) //校验账号4~20位(即只能是英文字母和数字组成的串) { var i,temp; var isvalidname = true; inputstr=trim(inputs); if(inputstr.length==null || inputstr.length==0 || inputstr.length > 20 || inputstr.length < 4) return false; for(i=0;i<inputstr.length;i++) { temp=inputstr.substring(i,i+1); if(!((temp>= "0" && temp <= "9") || (temp >= "a" && temp<= "z") || (temp >= "A" && temp <= "Z"))) { isvalidname=false; break; } } return isvalidname; } function login() { form1.UNAME.value = trim(form1.UNAME.value); form1.PWD.value = trim(form1.PWD.value); form1.PWD2.value = trim(form1.PWD2.value); form1.EMAIL.value = trim(form1.EMAIL.value); form1.NC.value = trim(form1.NC.value); if(!isvalidname(form1.UNAME.value)) { alert("请您注意:用户名必须为『2~15位英文或数字』!"); form1.UNAME.focus(); return false; } else if(!isvalidname(form1.PWD.value)) { alert("请您注意:密码必须为『2~15位英文或数字』!"); form1.PWD.focus(); return false; } else if(!isvalidname(form1.PWD2.value)) { alert("请您注意:密码确认也必须为『2~15位英文或数字』!"); form1.PWD2.focus(); return false; } else if(form1.PWD.value != form1.PWD2.value) { alert("两次密码不一致!"); form1.PWD.focus(); return false; } else if(form1.EMAIL.value == "" || form1.EMAIL.value.length > 100) { alert("请输入邮件!"); form1.EMAIL.focus(); return false; } else if(form1.NC.value == "" || form1.NC.value.length > 15) { alert("请输入昵称!"); form1.NC.focus(); return false; } else if(window.confirm("您确信提交!")) return true; else return false; } function regedit() { var litop = (screen.height - 162)/2; var lileft = (screen.width - 360)/2; window.open("/regedit.aspx", "reg", "titlebar=no,fullscreen=no,dependent=yes,height=162,width=360,top=" + litop + ",left=" + lileft + ", toolbar=no,menubar=no,scrollbars=no,resizable=no,channelmode=no,status=no,location=no,directories=no"); } function checkid(iden,year,month,day){ if (iden.value.length==15) { if ((iden.value.lastIndexOf(month.value+day.value))==8) { return true; } return false; } if (iden.value.length==18) { if ((iden.value.indexOf(year.value+month.value+day.value))==6) { return true; } return false; } return false; } function isCharsInBag (s, bag) { var i; for (i = 0; i < s.length; i++) { var c = s.charAt(i); if (bag.indexOf(c) == -1) return false; } return true; } function isEmpty(s) { return ((s == null) || (s.length == 0)) } function isWhitespace (s) { var whitespace = " /t/n/r"; var i; for (i = 0; i < s.length; i++) { var c = s.charAt(i); if (whitespace.indexOf(c) >= 0) { return true; } } return false; } function isEmail (s,t) { if (isEmpty(s)) { window.alert("输入的E-mail地址不能为空,请输入!"); mobj = eval(t); mobj.focus(); mobj.select(); return false } if (isWhitespace(s)) { window.alert("输入的E-mail地址中不能包含空格符,请重新输入!"); mobj = eval(t) mobj.focus() mobj.select() return false; } var i = 1; var len = s.length; if (len > 50) { window.alert("email地址长度不能超过50位!"); mobj = eval(t) mobj.focus() mobj.select() return false; } pos1 = s.indexOf("@"); pos2 = s.indexOf("."); pos3 = s.lastIndexOf("@"); pos4 = s.lastIndexOf("."); if ((pos1 <= 0)||(pos1 == len)||(pos2 <= 0)||(pos2 == len)) { window.alert("请输入有效的E-mail地址!"); mobj = eval(t) mobj.focus() mobj.select() return false; } else { if( (pos1 == pos2 - 1) || (pos1 == pos2 + 1) || ( pos1 != pos3 ) || ( pos4 < pos3 ) ) { window.alert("请输入有效的E-mail地址!"); mobj = eval(t) mobj.focus() mobj.select() return false; } } if ( !isCharsInBag( s, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.-_@")) { window.alert("email地址中只能包含字符ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.-_@/n" + "请重新输入" ); mobj = eval(t) mobj.focus() return false; } return true; } function isnumber(str){ var digits="1234567890"; var i=0; var strlen=str.length; while((i<strlen)){ var char=str.charAt(i); if(digits.indexOf(char)==-1)return false;i++; } return true; } function isnumbercode(str){ var digits="1234567890-/"; var i=0; var strlen=str.length; while((i<strlen)){ var char=str.charAt(i); if(digits.indexOf(char)==-1)return false;i++; } return true; } function checkForm(theform){ if (document.frm.companyname.value.length==0){ alert("单位名称不能为空。"); mobj = eval("document.frm.companyname"); mobj.focus() mobj.select() return false; } if (document.frm.address.value.length==0){ alert("单位地址不能为空"); mobj = eval("document.frm.address"); mobj.focus() mobj.select() return false; } if (document.frm.invest.value.length==0){ alert("投资额不能为空"); mobj = eval("document.frm.invest"); mobj.focus() mobj.select() return false; } if (document.frm.codeornumber.value.length==0){ alert("法人代码证书号或营业执照编号不能为空"); mobj = eval("document.frm.codeornumber"); mobj.focus() mobj.select() return false; } if (document.frm.linkman.value.length==0){ alert("联系人不能为空"); mobj = eval("document.frm.linkman"); mobj.focus() mobj.select() return false; } if (document.frm.linkmanjob.value.length==0){ alert("联系人职位不能为空"); mobj = eval("document.frm.linkmanjob"); mobj.focus() mobj.select() return false; } if (document.frm.phone.value.length==0){ alert("电话不能为空"); mobj = eval("document.frm.phone"); mobj.focus() mobj.select() return false; } if (document.frm.email.value=='') { window.alert ("请输入您的E-mail地址 !") mobj = eval("document.frm.email"); mobj.focus() mobj.select() return false } if ( !isEmail(document.frm.email.value,document.frm.email) ) return false if (document.frm.introduction.value.length==0){ alert("公司简介不能为空"); mobj = eval("document.frm.introduction"); mobj.focus() mobj.select() return false; } if (document.frm.positionname.value.length==0){ alert("职位名称不能为空"); mobj = eval("document.frm.positionname"); mobj.focus() mobj.select() return false; } if (document.frm.jobaddress.value.length==0){ alert("工作地点不能为空"); mobj = eval("document.frm.jobaddress"); mobj.focus() mobj.select() return false; } if (document.frm.jobfunction.value.length==0){ alert("工作职责不能为空"); mobj = eval("document.frm.jobfunction"); mobj.focus() mobj.select() return false; } if (document.frm.positionrequre.value.length==0){ alert("职位要求不能为空"); mobj = eval("document.frm.positionrequre"); mobj.focus() mobj.select() return false; } if (document.frm.salary.value.length==0){ alert("待遇不能为空"); mobj = eval("document.frm.salary"); mobj.focus() mobj.select() return false; } } $(function () { $("input[name='sub']").on("click", function () { if (!isEmail($("input[name='email']").val())) { $("span[name='email']").html("邮箱格式错误"); return false; } else { $("span[name='email']").html(""); } if (checkStrong($("input[name='password']").val()) < 3) { $("span[name='password']").html("密码太过简单"); return false; } else { $("span[name='password']").html(""); } if (!isQQ($.trim($("input[name='qq']").val()))) { $("span[name='qq']").html("请输入正确的QQ号码"); return false; } else { $("span[name='qq']").html(""); } if (!isPhone($.trim($("input[name='mnumber']").val()))) { $("span[name='mnumber']").html("请输入正确的手机号码"); return false; } else { $("span[name='mnumber']").html(""); } return true; }); }); $(function () { $("#address").focus(function () { // 地址框获得鼠标焦点 var txt_value = $(this).val(); // 得到当前文本框的值 if (txt_value == this.defaultValue) { $(this).val(""); // 如果符合条件,则清空文本框内容 } }); $("#address").blur(function () { // 地址框失去鼠标焦点 var txt_value = $(this).val(); // 得到当前文本框的值 if (txt_value == "") { $(this).val(this.defaultValue); // 如果符合条件,则设置内容 } }) $("#password").focus(function () { var txt_value = $(this).val(); if (txt_value == this.defaultValue) { $(this).val(""); } }); $("#password").blur(function () { var txt_value = $(this).val(); if (txt_value == "") { $(this).val(this.defaultValue); } }) }); // var ip="10.100.20.168" // ip=ip.split(".") // alert("IP值是:"+(ip[0]*255*255*255+ip[1]*255*255+ip[2]*255+ip[3]*1)) // 正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。 // 匹配中文字符的正则表达式: [/u4e00-/u9fa5] // 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 // 匹配双字节字符(包括汉字在内):[^/x00-/xff] // 评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) // 匹配空白行的正则表达式:/n/s*/r // 评注:可以用来删除空白行 // 匹配HTML标记的正则表达式:<(/S*?)[^>]*>.*?<//1>|<.*? /> // 评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力 // 匹配首尾空白字符的正则表达式:^/s*|/s*$ /// 评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式 // 匹配Email地址的正则表达式:/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)* // 评注:表单验证时很实用 // // 匹配网址URL的正则表达式:[a-zA-z]+://[^/s]* //评注:网上流传的版本功能很有限,上面这个基本可以满足需求 //匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ //评注:表单验证时很实用 // 匹配国内电话号码:/d{3}-/d{8}|/d{4}-/d{7} // 评注:匹配形式如 0511-4405222 或 021-87888822 // // 匹配腾讯QQ号:[1-9][0-9]{4,} // 评注:腾讯QQ号从10000开始 // 匹配中国邮政编码:[1-9]/d{5}(?!/d) // 评注:中国邮政编码为6位数字 // 匹配身份证:/d{15}|/d{18} // 评注:中国的身份证为15位或18位 // 匹配ip地址:/d+/./d+/./d+/./d+ // 评注:提取ip地址时有用 // 匹配特定数字: // ^[1-9]/d*$ //匹配正整数 // ^-[1-9]/d*$ //匹配负整数 // ^-?[1-9]/d*$ //匹配整数 // ^[1-9]/d*|0$ //匹配非负整数(正整数 + 0) // ^-[1-9]/d*|0$ //匹配非正整数(负整数 + 0) // ^[1-9]/d*/./d*|0/./d*[1-9]/d*$ //匹配正浮点数 // ^-([1-9]/d*/./d*|0/./d*[1-9]/d*)$ //匹配负浮点数 // ^-?([1-9]/d*/./d*|0/./d*[1-9]/d*|0?/.0+|0)$ //匹配浮点数 // ^[1-9]/d*/./d*|0/./d*[1-9]/d*|0?/.0+|0$ //匹配非负浮点数(正浮点数 + 0) // ^(-([1-9]/d*/./d*|0/./d*[1-9]/d*))|0?/.0+|0$ //匹配非正浮点数(负浮点数 + 0) //评注:处理大量数据时有用,具体应用时注意修正 // 匹配特定字符串: // ^[A-Za-z]+$ //匹配由26个英文字母组成的字符串 // ^[A-Z]+$ //匹配由26个英文字母的大写组成的字符串 // ^[a-z]+$ //匹配由26个英文字母的小写组成的字符串 // ^[A-Za-z0-9]+$ //匹配由数字和26个英文字母组成的字符串 // ^/w+$ //匹配由数字、26个英文字母或者下划线组成的字符串 // 评注:最基本也是最常用的一些表达式 // 匹配中文字符的正则表达式: [/u4e00-/u9fa5] // 匹配双字节字符(包括汉字在内):[^/x00-/xff] // 匹配空行的正则表达式:/n[/s| ]*/r // // 匹配HTML标记的正则表达式:/<(.*)>.*<///1>|<(.*) //>/ // // 匹配首尾空格的正则表达式:(^/s*)|(/s*$) // 匹配Email地址的正则表达式:/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)* // 匹配网址URL的正则表达式:http://([/w-]+/.)+[/w-]+(/[/w- ./?%&=]*)? // ^/d+$ //匹配非负整数(正整数 + 0) // ^[0-9]*[1-9][0-9]*$ //匹配正整数 // ^((-/d+)|(0+))$ //匹配非正整数(负整数 + 0) // ^-[0-9]*[1-9][0-9]*$ //匹配负整数 // ^-?/d+$ //匹配整数 // ^/d+(/./d+)?$ //匹配非负浮点数(正浮点数 + 0) // ^(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*))$ //匹配正浮点数 // ^((-/d+(/./d+)?)|(0+(/.0+)?))$ //匹配非正浮点数(负浮点数 + 0) // ^(-(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*)))$ //匹配负浮点数 // ^(-?/d+)(/./d+)?$ //匹配浮点数 // ^[A-Za-z]+$ //匹配由26个英文字母组成的字符串 // ^[A-Z]+$ //匹配由26个英文字母的大写组成的字符串 /// ^[a-z]+$ //匹配由26个英文字母的小写组成的字符串 // ^[A-Za-z0-9]+$ //匹配由数字和26个英文字母组成的字符串 // ^/w+$ //匹配由数字、26个英文字母或者下划线组成的字符串 // ^[/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+$ // "^/d+$" //非负整数(正整数 + 0) // "^[0-9]*[1-9][0-9]*$" //正整数 // "^((-/d+)|(0+))$" //非正整数(负整数 + 0) // "^-[0-9]*[1-9][0-9]*$" //负整数 // "^-?/d+$" //整数 // "^/d+(/./d+)?$" //非负浮点数(正浮点数 + 0) // "^(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*))$" //正浮点数 // "^((-/d+(/./d+)?)|(0+(/.0+)?))$" //非正浮点数(负浮点数 + 0) // "^(-(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*)))$" //负浮点 // 数 // "^(-?/d+)(/./d+)?$" //浮点数 // "^[A-Za-z]+$" //由26个英文字母组成的字符串 // "^[A-Z]+$" //由26个英文字母的大写组成的字符串 // "^[a-z]+$" //由26个英文字母的小写组成的字符串 // "^[A-Za-z0-9]+$" //由数字和26个英文字母组成的字符串 // "^/w+$" //由数字、26个英文字母或者下划线组成的字符串 // "^[/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+$" //email地址 // "^[a-zA-z]+://(/w+(-/w+)*)(/.(/w+(-/w+)*))*(/?/S*)?$" //url // /^13/d{9}$/gi手机号正则表达式 // public static bool IsValidMobileNo(string MobileNo) // { // const string regPattern = @"^(130|131|132|133|134|135|136|137|138|139)/d{8}$"; // return Regex.IsMatch(MobileNo, regPattern); // } ///正则表达式--验证手机号码:13[0-9]{9} // 实现手机号前带86或是+86的情况:^((/+86)|(86))?(13)/d{9}$ // 电话号码与手机号码同时验证:(^(/d{3,4}-)?/d{7,8})$|(13[0-9]{9}) // 提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(/w|//|//|/.)+('|"| *|>)? // 提取信息中的邮件地址:/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)* // 提取信息中的图片链接:(s|S)(r|R)(c|C) *= *('|")?(/w|//|//|/.)+('|"| *|>)? // 提取信息中的IP地址:(/d+)/.(/d+)/.(/d+)/.(/d+) /// 提取信息中的中国手机号码:(86)*0*13/d{9} // 提取信息中的中国固定电话号码:(/(/d{3,4}/)|/d{3,4}-|/s)?/d{8} // 提取信息中的中国电话号码(包括移动和固定电话):(/(/d{3,4}/)|/d{3,4}-|/s)?/d{7,14} // 提取信息中的中国邮政编码:[1-9]{1}(/d+){5} /// 提取信息中的中国身份证号码:/d{18}|/d{15} // 提取信息中的整数:/d+ // 提取信息中的浮点数(即小数):(-?/d*)/.?/d+ // 提取信息中的任何数字 :(-?/d*)(/./d+)? // 提取信息中的中文字符串:[/u4e00-/u9fa5]* // 提取信息中的双字节字符串 (汉字):[^/x00-/xff] /* 1.文本框只能输入数字代码(小数点也不能输入) <input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')" placeholder="文本框只能输入数字代码(小数点也不能输入)"> <br><br> 2.只能输入数字,能输小数点. <input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')" > <input name="txt1" onchange="if(/\D/.test(this.value)){alert('只能输入数字');this.value='';}" > <br><br> 3.数字和小数点方法二 <input type="text" t_value="" o_value="" onkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onkeyup="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onblur="if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^\.\d+$/))this.value=0+this.value;if(this.value.match(/^\.$/))this.value=0;this.o_value=this.value}"> <br><br> 4.只能输入字母和汉字 <input onkeyup="value=value.replace(/[\d]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\d]/g,''))" maxlength="10" name="Numbers"> <br><br> 5.只能输入英文字母和数字,不能输入中文 <input onkeyup="value=value.replace(/[^\w\.\/]/ig,'')"> <br><br> 6.只能输入数字和英文<font color="Red">chun</font> <input onkeyup="value=value.replace(/[^\d|chun]/g,'')"> <br><br> 7.小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号: <input onkeypress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false"> <br><br> 8.小数点后只能有最多两位(数字,字母,中文都可输入),可以输入运算符号: <input onkeyup="this.value=this.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')"> <br><br> 输入中文: <input type="text" onkeyup="this.value=this.value.replace(/[^\u4e00-\u9fa5]/g,'')"> <br><br> 输入数字: <input type="text" onkeyup="this.value=this.value.replace(/\D/g,'')"> <br><br> 输入英文: <input type="text" onkeyup="this.value=this.value.replace(/[^a-zA-Z]/g,'')"> <br><br> 三个合在一起 <input onkeyup="value=value.replace(/[^\w\u4E00-\u9FA5]/g, '')"> <br><br> 只输入数字和字母 :<input class="input" maxlength="12" size="15" name="username" id="username" onkeyup="value=value.replace(/[\W]/g,'')"> <br><br> 除了英文的标点符号以为 其他的人都可以中文,英文字母,数字,中文标点 <input type="text" onkeyup="this.value=this.value.replace(/^[^!@#$%^&*()-=+]/g,'')"> */ });
下一篇: 使背景图片自动适应浏览器屏幕(代码教程)