//////////////////////////////////////////////// //////调用本页面前,请先引用jquery.js文件///////// //////js表单验证集合///////////////////////////// //////2010-4-12///////////////////////////////// //////////////////////////////////////////////// //////////JVerify.js//////////////////////////// /* Class 说明[可以任意组合] 所有应用要生效,上级form表单必须Class需要应用:FormClassName[默认为var FormClassName = ".form"; //form表单样式] .J -- 正常(什么都不验证), 目的让生效(不是必填,但又控制了min和max生效) .req -- 必填 .email -- 邮箱 .tel -- 座机 .ascii -- 字母 数字、“_”、“.”的字符串 字母开头 .cn -- 只能输入中文 .cnc ---印刷顾问联系人 .en -- 不能包含英文以外的字符 .trueacct -- 银行卡号格式 .phone -- 手机格式 .phoneortel -- 手机或座机 .qq -- QQ(数字或邮箱) .phoneoremail -- 手机或邮箱 .idcardno -- 身份证 .postnum -- 邮编 .int -- 整数(不带小数点) .positiveint -- 正整数(大于0不带小数点) .float -- 数字 .rechargemoney --正小数 .carnumber --车牌号 .webaddress---网址验证 .Sreq -- 必选 <针对于select标签> .Rreq -- 必选 <针对于Radio标签> .Creq -- 必选 <针对于Checkbox标签> .notips -- 隐藏正常提示信息 .noBlur -- 失去焦点时不验证 .noFocus -- 得到焦点时不验证 min 最小值 max 最大值 //必填长度在2-8 //必填范围在2-8 //必填范围在2-8 1 2 3 //必选 1 2 3 4 //必选范围在2-3个 ajax验证 function CheckUserID(obj) { var val = $(obj).val(); $.ajax({ url: '/R/CheckName.htm', data: { name: val }, type: 'POST', success: function (msg) { EndAjax(obj, msg == "1" ? true : false); } }); } 再次输入密码验证 */ var FormClassName = ".form , .form2"; //form表单样式 var FormClassName2 = "form2"; //特殊表单 var NormalBorderColor = ""; //input边框 //#CCCCCC #999999 #999999 #CCCCC2 var NormalColor = "#666666"; //input字体颜色 var ErrorColor = "Red"; //错误提示颜色 var ErrorImg = "background: url(../../images/Common/pic_02.gif) no-repeat scroll 10px center transparent;"; //错误提示颜色 var TipsColor = "Green"; //正常提示颜色 var TipsImg = "background: url(../../images/Common/pic_03.gif) no-repeat scroll 10px center transparent;"; //正常提示颜色 var RightColor = "Green"; //正常提示颜色 var reqTips = ""; var reqMsg = ""; var selReqMsg = ''; var form_VerifyList = new Array(); form_VerifyList.push(new Array("verify_J", "*", "*")); form_VerifyList.push(new Array("verify_req", " ", "不能为空")); form_VerifyList.push(new Array("verify_email", " ", "邮箱格式错误")); form_VerifyList.push(new Array("verify_tel", " ", "格式:区号-号码")); form_VerifyList.push(new Array("verify_ascii", " 只能包含 字母 数字 _ . 字母开头", "只能包含 字母 数字 _ . 字母开头")); form_VerifyList.push(new Array("verify_cn", " 只能输入中文", "只能输入中文")); form_VerifyList.push(new Array("verify_cnc", "", "格式错误")); form_VerifyList.push(new Array("verify_en", " 不能包含英文以外的字符", "不能包含英文以外的字符")); form_VerifyList.push(new Array("verify_trueacct", "", "银行卡号格式错误")); form_VerifyList.push(new Array("verify_phone", "", "手机格式错误")); form_VerifyList.push(new Array("verify_phoneortel", "", "电话格式错误")); form_VerifyList.push(new Array("verify_qq", "", "QQ号错误")); form_VerifyList.push(new Array("verify_phoneoremail", " 请输入手机或邮箱", "请输入手机或邮箱")); form_VerifyList.push(new Array("verify_idcardno", "", "身份证格式错误")); form_VerifyList.push(new Array("verify_postnum", "", "邮编格式错误")); form_VerifyList.push(new Array("verify_webaddress", "", "非法网址")); form_VerifyList.push(new Array("verify_xpcname", "", "帐号类型名称错误")); form_VerifyList.push(new Array("verify_int", "", "必须为数字")); form_VerifyList.push(new Array("verify_positiveint", "", "必须为正整数")); form_VerifyList.push(new Array("verify_hundredint", "", "必须为整百正整数")); form_VerifyList.push(new Array("verify_cashmoney", "", "必须为整百正整数")); form_VerifyList.push(new Array("verify_float", "", "必须为数字")); form_VerifyList.push(new Array("verify_rechargemoney", "  ", "必须为大于0的数字")); form_VerifyList.push(new Array("verify_carnumber", "  ", "车牌号格式错误")); form_VerifyList.push(new Array("verify_loginname", " 5-20位含字母、数字、_", "5-20位含字母、数字、_")); form_VerifyList.push(new Array("verify_pwd", " 6-18位含字母、数字、_", "6-18位含字母、数字、_")); form_VerifyList.push(new Array("verify_RegImg", " 图片最大为1M", "")); form_VerifyList.push(new Array("verify_same", "", "输入密码不一致")); //参数 sameid form_VerifyList.push(new Array("verify_aornum", "", "只能输入数字或字母")); form_VerifyList.push(new Array("verify_regloginid", "", "")); form_VerifyList.push(new Array("verify_regcompanyname", "", "")); form_VerifyList.push(new Array("verify_regphone", "", "")); form_VerifyList.push(new Array("verify_regemail", "", "")); form_VerifyList.push(new Array("verify_intentioncompany", "", "")); form_VerifyList.push(new Array("verify_customcompany", "", "")); form_VerifyList.push(new Array("verify_PaperWeightName", "", "")); form_VerifyList.push(new Array("verify_CKGoodsName", "", "")); form_VerifyList.push(new Array("verify_Sreq", "", selReqMsg)); form_VerifyList.push(new Array("verify_Rreq", "", "", false)); form_VerifyList.push(new Array("verify_Creq", "", "", false)); //正常,目的让生效(不是必填,但又控制了min和max生效) function verify_J(obj, tips, msg) { set_flag_verify(obj, msg, tips, true); } //必填 function verify_req(obj, tips, msg) { if ($(obj).val().replace(/(^\s*)|(\s*$)/g, "").length == 0) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //校验登录名 function verify_loginname(obj, tips, msg) { var v_len = $(obj).val().length; //5-20个字符,一个汉字为两个字符,推荐使用中文会员名。一旦注册成功会员名不能修改。 if (v_len < 5 || v_len > 20) { set_flag_verify(obj, "登录帐号在5-20个字符内", tips, false); return false } else { var v_userName = $(obj).val(); if (/^\d*$/.test(v_userName)) { set_flag_verify(obj, "登录帐号不能全为数字", tips, false); return false } else { var chines = /^[a-zA-Z]{1}([a-zA-Z0-9]|[_])+$/; if (!chines.test(v_userName)) { set_flag_verify(obj, "登录帐号格式错误", tips, false); return false } } } set_flag_verify(obj, msg, tips, true); } //密码 function verify_pwd(obj, tips, msg) { var v_obj_val = $(obj).val(); if (v_obj_val.length < 6 || v_obj_val.length > 18) { set_flag_verify(obj, msg, tips, false); return false } else { var v_obj_val = $(obj).val(); if (/^\d*$/.test(v_obj_val)) { set_flag_verify(obj, "密码不能全为数字", tips, false); return false } } set_flag_verify(obj, msg, tips, true); } //邮件 function verify_email(obj, tips, msg) { var reg = /^[_\.0-9A-Za-z-]+@[0-9A-Za-z\-]+\.(com|cc|cn|tv|hk|name|mobi|net|biz|org|info|gov\.cn|com\.cn|net\.cn|org\.cn)$/; if (!reg.test($(obj).val()) && $(obj).val() != "") set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //图片 function verify_RegImg(obj, tips, msg) { set_flag_verify(obj, msg, tips, true); } //座机 function verify_tel(obj, tips, msg) { var reg = /^((\(0[0-9]{2,3}\))|(0[0-9]{2,3}\-))?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //可带 字母 数字、“_”、“.”的字符串 function verify_ascii(obj, tips, msg) { var reg = /^[a-zA-Z]{1}([a-zA-Z0-9]|[._])+$/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //字母 数字的字符串 function verify_aornum(obj, tips, msg) { var reg = /^[a-zA-Z0-9]+$/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //只能为中文 function verify_cn(obj, tips, msg) { var reg = /^[\u4e00-\u9fa5]+$/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //印刷顾问联系人 function verify_cnc(obj, tips, msg) { var reg = /^[\u4e00-\u9fa5]+$/; if (!reg.test($(obj).val())) { set_flag_verify(obj, msg, tips, false); return false; } if ($(obj).val().length < 2 || $(obj).val().length > 6) { set_flag_verify(obj, msg, tips, false); return false; } set_flag_verify(obj, msg, tips, true); } //不能包含英文以外的字符 function verify_en(obj, tips, msg) { var reg = /^[a-zA-Z]+$/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //验证银行卡:卡号必须为15位或16位或19位数字 function verify_trueacct(obj, tips, msg) { var reg = /^(\d{15}|\d{16}|\d{19})$/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //验证手机号码:13、15、18 function verify_phone(obj, tips, msg) { var reg = /^[0-9]{11}$/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //验证手机或者座机 function verify_phoneortel(obj, tips, msg) { var reg = /^[0-9]{11}$/; var reg2 = /^((\(0[0-9]{2,3}\))|(0[0-9]{2,3}\-))?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$/; //座机 if (!reg.test($(obj).val()) && !reg2.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //QQ function verify_qq(obj, tips, msg) { var reg = /^[0-9]+$|^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/; //数字或邮箱 if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //邮箱或手机 function verify_phoneoremail(obj, tips, msg) { var reg = /^[0-9]{11}$/; //手机 var reg2 = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/; //邮箱 if (!reg.test($(obj).val()) && !reg2.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //身份证验证 function verify_idcardno(obj, tips, msg) { var reg = /(^\d{15}$)|(^\d{17}([0-9]|X)$)/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //网址验证 function verify_webaddress(obj, tips, msg) { var reg = /http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //邮编 function verify_postnum(obj, tips, msg) { var reg = /^[1-9][0-9]{5}$/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //必须为整数 function verify_int(obj, tips, msg) { var reg = /^-?\d+$/; //^[0-9]+$ if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //必须为正整数 function verify_positiveint(obj, tips, msg) { var reg = /^[0-9]+$/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //必须为整百正整数 function verify_hundredint(obj, tips, msg) { var reg = /^[1-9][0-9]*[0][0]$/; ///^-?\d+$/; //^[0-9]+$ if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //必须为数字 function verify_float(obj, tips, msg) { var reg = /^-?\d+(\.\d+)?$/; //^[0-9]+(\.)?([0-9])?([0-9])?$ if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //必须为大于0的数字 function verify_rechargemoney(obj, tips, msg) { var reg = /^-?\d+(\.\d+)?$/; //^[0-9]+(\.)?([0-9])?([0-9])?$ if (parseFloat($(obj).val()) <= 0) set_flag_verify(obj, msg, tips, false); else { if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } } //请填写大于0的整百数字 function verify_cashmoney(obj, tips, msg) { var reg = /^[1-9][0-9]*[0][0]$/; if (parseInt($(obj).val()) <= 0) set_flag_verify(obj, msg, tips, false); else { if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else { if (parseInt($(obj).val()) > parseInt($(obj).attr("maxcash"))) { set_flag_verify(obj, "所提取金额不能大于可提现金额", msg, false); } else set_flag_verify(obj, msg, tips, true); } } } //车牌号验证 function verify_carnumber(obj, tips, msg) { var reg = /^[\u4e00-\u9fa5]{1}[A-Z]{1}[-]{1}[A-Z_0-9]{5}$/; ///^[\u4e00-\u9fa5][-]{1}[A-Z0-9]{6}$/; if (!reg.test($(obj).val())) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //验证两次输入密码是否相同 function verify_same(obj, tips, msg) { var value1 = $("#" + $(obj).attr("sameid")).val(); //原始值 if ($(obj).val().replace(/(^\s*)|(\s*$)/g, "").length == 0) set_flag_verify(obj, "不能为空", "", false); else if ($(obj).val() != value1) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } //radio必选 function verify_Rreq(obj, tips, msg) { try { var name = $(obj).attr("name"); var P = $(obj).parents(FormClassName); //var AllCont = $(":radio[name='" + name + "']").length; if ($(P).find(":radio[name='" + name + "']:checked").length == 0) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } catch (e) { } } //checkbox必选 function verify_Creq(obj, tips, msg) { try { var name = $(obj).attr("name"); var P = $(obj).parents(FormClassName); //var AllCont = $(":checkbox[name='" + name + "']").length; if ($(P).find(":checkbox[name='" + name + "']:checked").length == 0) set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } catch (e) { } } //select必选 function verify_Sreq(obj, tips, msg) { try { if ($(obj).val() == null || $(obj).val().replace(/(^\s*)|(\s*$)/g, "") == "") set_flag_verify(obj, msg, tips, false); else set_flag_verify(obj, msg, tips, true); } catch (e) { } } //验证函数 function set_flag_verify(obj, msg, tips, value) { set_flag_verify(obj, msg, tips, value, false); } //验证函数 function set_flag_verify(obj, msg, tips, value, first) { msg = getInputMsg(obj, msg); tips = getInputTips(obj, tips); var arr = checkMinMax(obj, value); if (!first) { value = arr[0]; } if (!HasAttr(obj, "msg")) msg = msg + arr[1]; if (!HasAttr(obj, "tips")) //tips = tips + arr[1]; if ($(obj).val() != null && $(obj).val().replace(/(^\s*)|(\s*$)/g, "").length == 0 && !$(obj).hasClass("req") && !$(obj).hasClass("Sreq")) { value = true; } removeMsgTips(obj); if (value) AjaxCheck(obj, value); if (value == false) { addErrorSpan(obj, msg); $(obj).addClass("inputError"); } else { addTipsSpan(obj, tips, first ? !first : true); $(obj).removeClass("inputError"); } } //ajax验证 function AjaxCheck(obj) { try { if (HasAttr(obj, "ajax") && $.trim($(obj).val()) != "") eval($(obj).attr("ajax").replace("this", "$(obj)")); } catch (cse) { } } function EndAjax(obj, Result) { if (Result) { removeMsgTips(obj); addErrorSpan(obj, $(obj).attr("ajax_msg")); $(obj).addClass("inputError"); } } //获取自定义错误提示信息 function getInputMsg(obj, msg) { if (HasAttr(obj, "msg")) //msg = msg + " " + $(obj).attr('msg'); return $(obj).attr('msg'); return msg; } //获取自定义正常提示信息 function getInputTips(obj, tips) { if (HasAttr(obj, "tips")) //tips = tips + " " + $(obj).attr('tips'); return $(obj).attr('tips'); return tips; } //获取自定义显示区 function getInputShowClass(obj) { if (HasAttr(obj, "showclass")) //tips = tips + " " + $(obj).attr('tips'); return $(obj).attr('showclass'); return ""; } function GetArrValue(obj, ArrName) { if (HasAttr(obj, ArrName)) return $(obj).attr(ArrName); return ""; } //是否有此属性 function HasAttr(obj, attrName) { return $(obj).attr(attrName) != undefined && $(obj).attr(attrName) != null && $(obj).attr(attrName).length > 0; } //获取焦点 function inputFocus(obj, tips) { tips = getInputTips(obj, tips); var arr = checkMinMax(obj, true); if (!HasAttr(obj, "tips")) tips = tips + arr[1]; removeMsgTips(obj); $(obj).removeClass("inputError"); addTipsSpan(obj, tips, false); //$(obj).css("border", "1px solid " + FocusColor); //$(obj).css("color", FocusColor); } //移除提示span function removeMsgTips(obj) { var P = $(obj).parents(FormClassName); $(P).find("span[id='msg_" + $(obj).attr('name') + "']").remove(); $(P).find("span[id='tips_" + $(obj).attr('name') + "']").remove(); } //增加错误提示span function addErrorSpan(obj, msg) { if ($(obj).hasClass("req")) { if (msg.indexOf(reqMsg) < 0) { msg = reqMsg + " " + msg; } } if ($(obj).hasClass("notips")) { msg = "*"; } var sclass = getInputShowClass(obj); //if (sclass.length <= 0) if (true) { var non = ""; if (CheckHasForm2(obj)) { non = "display:none; "; alertMsg(msg); //obj.focus(); $(obj).css("border-color", "red"); } $(obj).after("" + msg + ""); } else { $("." + sclass).html("" + msg + ""); $("." + sclass).css("color", ErrorColor); } //$(obj).css("border", "1px solid " + ErrorColor); $(obj).addClass("red"); } function goFocus(tdom) { if (window.isfocused) return; window.isfocused = window.isfocused ? window.isfocused : true; try { setTimeout('window.isfocused=undefined;', 200); } catch (e) { } }; //增加正常提示span function addTipsSpan(obj, tips, S) { if ($(obj).hasClass("req")) { if (tips.indexOf(reqTips) < 0) { tips = reqTips + " " + tips; } } if ($(obj).hasClass("notips")) { tips = "*"; } var pic = ""; var color = ""; if (S) { pic = "spanRight"; color = RightColor; } else { pic = "spanTips"; color = TipsColor; } var sclass = getInputShowClass(obj); if (!CheckHasForm2(obj)) { if (sclass.length <= 0) { $(obj).after("" + tips + ""); } else { $("." + sclass).html("" + tips + ""); $("." + sclass).css("color", color); } $(obj).css("border-width", "1px"); $(obj).css("border-style", "solid"); $(obj).css("border-color", NormalBorderColor); $(obj).removeClass("red"); } else { $(obj).css("border-width", "1px"); $(obj).css("border-style", "solid"); $(obj).css("border-color", NormalBorderColor); $(obj).removeClass("red"); } } //验证字符串长度 或者 数值大小 function checkMinMax(obj, value) { var t = ""; var s = value; var val = $(obj).val(); if ($(obj).attr('minNot') != undefined && $(obj).attr('minNot') != null && $(obj).attr('minNot').length > 0) { var min = parseFloat($(obj).attr('minNot')); if ($(obj).hasClass("int") || $(obj).hasClass("float")) { val = parseFloat(val); if (min >= val) { s = false; } t = t + " " + "值必须大于" + $(obj).attr('minNot'); } } if ($(obj).attr('min') != undefined && $(obj).attr('min') != null && $(obj).attr('min').length > 0) { var min = parseFloat($(obj).attr('min')); if ($(obj).hasClass("int") || $(obj).hasClass("float")) { val = parseFloat(val); if (min > val) { s = false; } t = t + " " + "值不小于" + $(obj).attr('min'); } else if ($(obj).hasClass("Creq")) { var name = $(obj).attr("name"); var P = $(obj).parents(FormClassName); var CheckCount = parseFloat($(P).find(":checkbox[name='" + name + "']:checked").length); if (min > CheckCount) { s = false; } t = t + " " + "个数不小于" + $(obj).attr('min'); } else { if (min > C_ASIIC(val).length) { s = false; } t = t + " " + "长度不小于" + $(obj).attr('min'); } } if ($(obj).attr('max') != undefined && $(obj).attr('max') != null && $(obj).attr('max').length > 0) { var max = parseFloat($(obj).attr('max')); if ($(obj).hasClass("int") || $(obj).hasClass("float") || $(obj).hasClass("positiveint")) { val = parseFloat(val); if (max < val) { s = false; } t = t + " " + "值不大于" + $(obj).attr('max'); } else if ($(obj).hasClass("Creq")) { var name = $(obj).attr("name"); var P = $(obj).parents(FormClassName); var CheckCount = parseFloat($(P).find(":checkbox[name='" + name + "']:checked").length); if (max < CheckCount) { s = false; } t = t + " " + "个数不大于" + $(obj).attr('max'); } else { if (max < C_ASIIC(val).length) { s = false; } t = t + " " + "长度不大于" + $(obj).attr('max'); } } return new Array(s, t); } //把一个双字节转换为ww function C_ASIIC(val) { return val.replace(/[^\x00-\xff]/g, "ww"); } //检验错误 function isError() { //alertMsg($('.inputError').length); return $('.inputError').length > 0; }; //表单submit时验证 function verfy_submit(_obj) { if (window.ErrorSourse && window.ErrorSourse.getAttribute('vfname') && undefined != (window.el_this = $(window.ErrorSourse)) && !eval(window.ErrorSourse.getAttribute('vfname')))//有错误时先验证错误源 { return false; } else { } //var obj = FormClassName; var obj = $(_obj); if (!CheckHasForm2(obj)) { //if ($(obj).find(".inputError").length > 0) return false; if ($(obj).find(".inputError").not(".Rreq,.Creq").length > 0) return false; var output = ""; for (var i = 0; i < form_VerifyList.length; i++) { var tips = form_VerifyList[i][1]; var msg = form_VerifyList[i][2]; var functionName = form_VerifyList[i][0]; var className = ""; try { className = functionName.split("_")[1]; } catch (ce) { continue; } if (className == "") { continue; } var vdoms = $(obj).find(("." + className)); if (!ValidateArray(vdoms, functionName, tips, msg)) return false; } //ShowWaitFront(); return true; } else { $(obj).find("*").removeClass("inputError"); for (var i = 0; i < form_VerifyList.length; i++) { var tips = form_VerifyList[i][1]; var msg = form_VerifyList[i][2]; var functionName = form_VerifyList[i][0]; var className = ""; try { className = functionName.split("_")[1]; } catch (ce) { continue; } if (className == "") { continue; } var vdoms = $(obj).find(("." + className)); if (!ValidateArray(vdoms, functionName, tips, msg)) return false; } //ShowWaitFront(); return true; } } /* 验证表单 @params: _tform:form表单(原身) */ function verfy_form(_tform) { if (!_tform || 'FORM' != _tform.tagName) { return false; } if (window.ErrorSourse && window.ErrorSourse.getAttribute('vfname') && undefined != (window.el_this = $(window.ErrorSourse)) && !eval(window.ErrorSourse.getAttribute('vfname')))//有错误时先验证错误源 { return false; } else { } $(_tform).find("*").removeClass("inputError"); for (var fekey in _tform) { var currentFromEl = _tform[fekey]; if (!currentFromEl || 'object' != typeof (currentFromEl) || !currentFromEl.className || !currentFromEl.getAttribute('vfname') || ((window.el_this = $(currentFromEl)) && eval(currentFromEl.getAttribute('vfname')))) continue; window.ErrorSourse = currentFromEl; return false; } return true; } /* 验证一组dom */ function ValidateArray(vdoms, functionName, tips, msg) { var maxLength = vdoms.length; if (0 == maxLength) return true; var i = -1; while (++i < maxLength) { window.ErrorSourse = vdoms[i]; window[functionName]($(vdoms[i]), tips, msg); if (isError()) return !isError; window.ErrorSourse = undefined; } return true; } //检查是否是form2 function CheckHasForm2(_obj) { if ($(_obj).hasClass(FormClassName2)) return true; var Forms = $(_obj).parents(FormClassName); if ($(Forms).length > 0) { if ($(Forms).eq(0).hasClass(FormClassName2)) { return true; } } return false; } //初始验证函数 $(function () { $(FormClassName).each(function (fi, fv) { for (var i = 0; i < form_VerifyList.length; i++) { var functionName = form_VerifyList[i][0]; var tips = form_VerifyList[i][1]; //正常提示信息 var msg = form_VerifyList[i][2]; //错误提示信息 var className = ""; try { className = functionName.split("_")[1]; } catch (ce) { continue; } if (className == "") { continue; } if ($(fv).find("." + className).length == 0) continue; $(fv).find("." + className).each(function (ui, vi) { $(vi).attr("tips", GetArrValue($(vi), "tips") + tips); }); $(fv).find("." + className).attr('vfname', 'ValidateArray(el_this, "' + functionName + '", "' + tips + '", "' + msg + '");'); eval("$(fv).find('." + className + "').blur(function (theEl) { var el_this = $(this);if (($(this).hasClass('inputError') || window.ErrorSourse ==undefined || window.ErrorSourse == this || !isError()) && !$(this).hasClass('noBlur')){window.FormErrored = eval(this.getAttribute('vfname')); }});"); //eval("$(fv).find(\"." + className + "\").focus(function(){if(!$(this).hasClass('noFocus')){ inputFocus($(this),'" + tips + "'); } });"); $(fv).find("." + className).each(function (ui, vi) { //初始显示提示 //eval("set_flag_verify($(this), '" + msg + "', '" + tips + "', true, true);"); }); var isRes = true; if (form_VerifyList[i][3] != undefined) { isRes = form_VerifyList[i][3]; } if (!isRes) { $(fv).find("." + className).hide(); $(fv).find("." + className).val(" "); } } //增加submit方法 $(fv).submit(function () { return verfy_submit($(this)); }); }); }); var fromobjlading = {}; fromobjlading.each = function (FormClassName) { $(FormClassName).each(function (fi, fv) { for (var i = 0; i < form_VerifyList.length; i++) { var functionName = form_VerifyList[i][0]; var tips = form_VerifyList[i][1]; //正常提示信息 var msg = form_VerifyList[i][2]; //错误提示信息 var className = ""; try { className = functionName.split("_")[1]; } catch (ce) { continue; } if (className == "") { continue; } $(fv).find("." + className).each(function (ui, vi) { $(vi).attr("tips", GetArrValue($(vi), "tips") + tips); }); eval("$(fv).find(\"." + className + "\").blur(function(){if(!$(this).hasClass('noBlur')){" + functionName + "($(this),'" + tips + "','" + msg + "'); } });"); eval("$(fv).find(\"." + className + "\").focus(function(){if(!$(this).hasClass('noFocus')){ inputFocus($(this),'" + tips + "'); } });"); $(fv).find("." + className).each(function (ui, vi) { //初始显示提示 eval("set_flag_verify($(this), '" + msg + "', '" + tips + "', true, true);"); }); var isRes = true; if (form_VerifyList[i][3] != undefined) { isRes = form_VerifyList[i][3]; } if (!isRes) { $(fv).find("." + className).hide(); $(fv).find("." + className).val(" "); } } //增加submit方法 $(fv).submit(function () { return verfy_submit($(this)); }); }); }; fromobjlading.eachOther = function (FormClassName) { $(FormClassName).each(function (fi, fv) { for (var i = 0; i < form_VerifyList.length; i++) { var functionName = form_VerifyList[i][0]; var tips = form_VerifyList[i][1].replace("*", "").replace("图片最大为1M", "").replace("整数", ""); //正常提示信息 var msg = form_VerifyList[i][2]; //错误提示信息 var className = ""; try { className = functionName.split("_")[1]; } catch (ce) { continue; } if (className == "") { continue; } $(fv).find("." + className).each(function (ui, vi) { $(vi).attr("tips", GetArrValue($(vi), "tips") + tips); }); eval("$(fv).find(\"." + className + "\").blur(function(){if(!$(this).hasClass('noBlur')){" + functionName + "($(this),'" + tips + "','" + msg + "'); } });"); eval("$(fv).find(\"." + className + "\").focus(function(){if(!$(this).hasClass('noFocus')){ inputFocus($(this),'" + tips + "'); } });"); $(fv).find("." + className).each(function (ui, vi) { //初始显示提示 eval("set_flag_verify($(this), '" + msg + "', '" + tips + "', true, true);"); }); var isRes = true; if (form_VerifyList[i][3] != undefined) { isRes = form_VerifyList[i][3]; } if (!isRes) { $(fv).find("." + className).hide(); $(fv).find("." + className).val(" "); } } //增加submit方法 $(fv).submit(function () { return verfy_submit($(this)); }); }); };