Edit D:\AVA\AVAStandard\AVA.ResourcesPlatform.AdminUI\JS\zh-CN\YK_Validate\YK_Validate.js
??//????????????????? var jQuery_Validator_initConfig = []; (function($) { $.validator = { initConfig: function(controlOptions) { var settings = { debug: false, validatorGroup: "YK_VALIDATOR", alertMessage: false, //?????????????? showMessage: true, //???????????? showValid: true, //?????????????????? validObjects: [], //???????? errorList: [], //??????????? validList: [], //??????????? onSuccess: function() { return true; }, //??????????? ??????????????rue ??? false onError: function() { }, //??????????? form: "", //???????????? errorFocus: true //??????????????????????? }; $.extend(true, settings, controlOptions); jQuery_Validator_initConfig.push(settings); //????????? //??????form??????????? //var submits = $(settings.form).find("[type=submit]").not("[validatorgroup]"); var submits = $(settings.form).find("[type=submit]"); for (var i = 0; i <= submits.length - 1; i++) { var item = submits[i]; //??????????????????????? var fun = item.onclick; item.onclick = function() { //?????? //???????????? var group = "YK_VALIDATOR"; if (typeof ($(this).attr("validatorgroup")) != "undefined" && $(this).attr("validatorgroup") != "") { group = $(this).attr("validatorgroup"); } if ($.validator.valid(group) == false) { return false; } if (typeof (fun) != "undefined") { //?????????????????????????? fun.call(this); //????????????????????????????????????????????????????? } }; }; //???????????????????? //??????????????????????? //???form????????? //var buttons = $().find("[validatorgroup=''],[validatorgroup][validatorgroup!='']"); var buttons = $(settings.form).find("[validatorgroup=''],[validatorgroup][validatorgroup!='']").not("[type=submit]"); for (var i = 0; i <= buttons.length - 1; i++) { var item = buttons[i]; //??????????????????????? var fun = item.onclick; item.onclick = function() { //?????? //???????????? var group = "YK_VALIDATOR"; //?????????validatorgroup??????????????????????? if (typeof ($(this).attr("validatorgroup")) != "undefined" && $(this).attr("validatorgroup") != "") { group = $(this).attr("validatorgroup"); } if ($.validator.valid(group) == false) { return false; } if (typeof (fun) != "undefined") { fun.call(this); } }; }; }, //???validator????????lement?????alidator?????????????????? //?????????????????? getInitConfig: function(validatorgroup) { if (jQuery_Validator_initConfig != null) { for (i = 0; i < jQuery_Validator_initConfig.length; i++) { //????????????????????? if (this.hasGroup(jQuery_Validator_initConfig[i], validatorgroup)) { return jQuery_Validator_initConfig[i]; } } } return null; }, //????????? setInitConfig: function(settings, validatorgroup) { if (jQuery_Validator_initConfig != null) { for (i = 0; i < jQuery_Validator_initConfig.length; i++) { //????????????????????? if (this.hasGroup(jQuery_Validator_initConfig[i], validatorgroup)) { jQuery_Validator_initConfig[i] = settings; break; } } } }, //???????????? addGroup: function(elem, validatorgroups) { jQuery.each((validatorgroups || "").split(/\s+/), function(i, validatorgroup) { if (!this.hasGroup(elem, validatorgroup)) { elem.validatorGroup += (elem.validatorGroup ? " " : "") + validatorgroup; } }); }, //??????????????? removeGroup: function(elem, validatorgroups) { var reg = validatorgroups.split(" ").join("|"); elem.validatorGroup = elem.validatorGroup.replace(new RegExp(reg, "gi", "")); }, //????????????????????? hasGroup: function(elem, validatorgroup) { return elem && jQuery.inArray(validatorgroup, (elem.validatorGroup).toString().split(/\s+/)) > -1; }, //???????????????????????elector?????????????? ?????? addValid: function(selector, tagretValidatorGroup, validatorgroup) { if (typeof (validatorgroup) == "undefined") { //????????????????????????????? validatorgroup = "YK_VALIDATOR"; }; //??? if (typeof (tagretValidatorGroup) != "undefined") { //????????????????? var initConfig = $.validator.getInitConfig(validatorgroup); //???????????????????????????????????? initConfig = this.removeValid(selector, validatorgroup); var initConfigTarget = $.validator.getInitConfig(tagretValidatorGroup); // for (item in initConfigTarget.validObjects) { for (var i = 0; i <= initConfigTarget.validObjects.length - 1; i++) { var item = initConfigTarget.validObjects[i]; if (item.selector == selector) { item.validator.enable = true; initConfig.validObjects.push(item); break; } } } var oo = ""; //????????? this.setInitConfig(initConfig, validatorgroup); return initConfig; }, removeValid: function(selector, validatorgroup) { if (typeof (validatorgroup) == "undefined") { //????????????????????????????? validatorgroup = "YK_VALIDATOR"; }; //????????????????? var initConfig = $.validator.getInitConfig(validatorgroup); for (i in initConfig.validObjects) { var item = initConfig.validObjects[i]; if (item.selector == selector) { initConfig.validObjects.splice(i, 1); } } //????????? this.setInitConfig(initConfig, validatorgroup); return initConfig; }, itemValid: function(selector, validatorgroup) { if (typeof (validatorgroup) == "undefined") { //????????????????????????????? validatorgroup = "YK_VALIDATOR"; }; //????????????????? var initConfig = $.validator.getInitConfig(validatorgroup); var item = null; for (i in initConfig.validObjects) { item = initConfig.validObjects[i]; if (item.selector == selector) { break; } } if(item!=null) { this.blurValid(item); } }, addMethod: function(selector, rule, validatorgroup) { if (typeof (validatorgroup) == "undefined") { //????????????????????????????? validatorgroup = "YK_VALIDATOR"; }; //?????????????? this.removeMethod(selector, rule, validatorgroup); //???????????? var initConfig = $.validator.getInitConfig(validatorgroup); for (i in initConfig.validObjects) { var item = initConfig.validObjects[i]; if (item.selector == selector) { //????????? $.extend(true, initConfig.validObjects[i].validator, rule); } } //????????? this.setInitConfig(initConfig, validatorgroup); return initConfig; }, //????????? removeMethod: function(selector, rule, validatorgroup) { if (typeof (validatorgroup) == "undefined") { //????????????????????????????? validatorgroup = "YK_VALIDATOR"; }; //????????????????? var initConfig = $.validator.getInitConfig(validatorgroup); for (i in initConfig.validObjects) { var item = initConfig.validObjects[i]; if (item.selector == selector) { //?????? if (typeof (initConfig.validObjects[i].validator.rules[rule]) != "undefined") { delete initConfig.validObjects[i].validator.rules[rule]; } if (typeof (initConfig.validObjects[i].validator.message[rule]) != "undefined") { delete initConfig.validObjects[i].validator.message[rule]; } if (typeof (initConfig.validObjects[i].validator.messageAlert[rule]) != "undefined") { delete initConfig.validObjects[i].validator.messageAlert[rule]; } } } //????????? this.setInitConfig(initConfig, validatorgroup); return initConfig; }, //???????? valid: function(validatorgroup, onlyvalid) { //????????? var isValid = false; if (typeof (validatorgroup) == "undefined") { validatorgroup = "YK_VALIDATOR"; } //???????????? var initConfig = $.validator.getInitConfig(validatorgroup); if (initConfig == null) { //??????????????????????????? return true; } initConfig.errorList = []; //??????????? initConfig.validList = []; //??????????? //??????????????????????? var oo = initConfig.validObjects.length; $.map(initConfig.validObjects, function(elem) { if (elem.validator.enable == true) { //?????????????? var returnObj = $.validator.blurValid(elem); //???????????? if (returnObj.isValid == true) { initConfig.validList.push(returnObj); } else { initConfig.errorList.push(returnObj); } } }); //???????????? if (typeof (onlyvalid) != "undefined" && onlyvalid == true) { return isValid; } //?????? if (initConfig.errorList.length > 0) { //???????????????????? initConfig.onError(); //????????????????? if (initConfig.alertMessage == true) { var alertMessage = ""; for (errorItem in initConfig.errorList) { if (typeof (initConfig.errorList[errorItem].messageAlert) != "undefined") { if (alertMessage == "") { alertMessage += "_" + initConfig.errorList[errorItem].messageAlert; } else { alertMessage += "\r\n_" + initConfig.errorList[errorItem].messageAlert; } } } alert(alertMessage); } //??????????????????? if (initConfig.errorFocus) { if(initConfig.errorList[0].target.validator != null && initConfig.errorList[0].target.validator.targetFocus !=null) { $(initConfig.errorList[0].target.validator.targetFocus).focus(); } else { initConfig.errorList[0].target.focus(); } } } else { //????????????????????? isValid = initConfig.onSuccess(); } return isValid; }, focusValid: function(elem) { //????????? var returnObj = $.validator.oneIsValid(elem); if (returnObj.isValid == false) { //??????????????? $.validator.setClass(elem, "focus", returnObj); } else { //??????????????? $.validator.setClass(elem, "valid", returnObj); } return returnObj; }, blurValid: function(elem) { //????????? var returnObj = this.oneIsValid(elem); if (returnObj.isValid == false) { //??????????????? $.validator.setClass(elem, "error", returnObj); } else { //??????????????? $.validator.setClass(elem, "valid", returnObj); } return returnObj; }, showValid: function(elem) { //????????? var returnObj = this.oneIsValid(elem); if (returnObj.isValid == false) { //??????????????? //$.validator.setClass(elem, "error", returnObj); } else { //??????????????? $.validator.setClass(elem, "valid", returnObj); } return returnObj; }, //??????????????????????? setClass: function(elem, type, returnObj) { var initConfig = $.validator.getInitConfig(elem.validator.validatorgroup); //?????? switch (type) { case "focus": if (!elem.validator.tag.hasClass(elem.validator.classFocus)) { //???????????isplay $(elem.validator.tag).css("display", ""); //??????????? var remove = elem.validator.classShow + " " + elem.validator.classFocus + " " + elem.validator.classError + " " + elem.validator.classValid + " " + elem.validator.classAjax; //?????? $(elem).removeClass(remove); $(elem).addClass(elem.validator.classFocus); //???????????? // if (initConfig.showMessage == true) { elem.validator.tag.removeClass(remove); //??????????????????????? if (elem.validator.messageFocus == "") { elem.validator.tag.html(""); } else { elem.validator.tag.addClass(elem.validator.classFocus); //.hide().fadeIn().css("display", "inline"); elem.validator.tag.html(elem.validator.messageFocus); } // } } break; case "error": //??????????? //???????????isplay $(elem.validator.tag).css("display", ""); var remove = elem.validator.classShow + " " + elem.validator.classFocus + " " + elem.validator.classError + " " + elem.validator.classValid + " " + elem.validator.classAjax; //?????? $(elem).removeClass(remove); elem.validator.tag.removeClass(remove); $(elem).addClass(elem.validator.classError); elem.validator.tag.addClass(elem.validator.classError); //.hide().fadeIn().css("display", "inline"); //elem.validator.tag.html(returnObj.message); //????????????????????????????????????onFocus??? elem.validator.tag.html(""); elem.validator.messageFocus = returnObj.message; break; case "valid": if (!elem.validator.tag.hasClass(elem.validator.classValid)) { //???????????isplay $(elem.validator.tag).css("display", ""); //??????????? var remove = elem.validator.classShow + " " + elem.validator.classFocus + " " + elem.validator.classError + " " + elem.validator.classValid + " " + elem.validator.classAjax; //?????? $(elem).removeClass(remove); elem.validator.tag.removeClass(remove); $(elem).addClass(elem.validator.classValid); elem.validator.tag.addClass(elem.validator.classValid); //.hide().fadeIn().css("display", "inline"); elem.validator.tag.html(elem.validator.messageValid); } break; case "ajax": //???????????isplay $(elem.validator.tag).css("display", ""); //??????????? ??????????????????? returnObj ????????? classAjax ,messageAjax var remove = elem.validator.classShow + " " + elem.validator.classFocus + " " + elem.validator.classError + " " + elem.validator.classValid + " " + elem.validator.classAjax; //?????? $(elem).removeClass(remove); elem.validator.tag.removeClass(remove); $(elem).addClass(returnObj.classAjax); elem.validator.tag.addClass(returnObj.classAjax); //.hide().fadeIn().css("display", "inline"); elem.validator.tag.html(returnObj.messageAjax); break; } }, //??????????????? getLength: function(elem) { var sType = elem.get(0).type; var len = 0; switch (sType) { case "text": case "hidden": case "password": case "textarea": case "file": var val = elem.val(); if (elem.validator.wideWord == true) { for (var i = 0; i < val.length; i++) { if (val.charCodeAt(i) >= 0x4e00 && val.charCodeAt(i) <= 0x9fa5) { len += 2; } else { len++; } } } else { len = val.length; } break; case "checkbox": case "radio": $.map(elem, function(item) { if (item.checked == true) { len++; } }); break; case "select-one": //???-1???????? len = elem.find("option[selected]").length; break; case "select-multiple": len = elem.find("option[selected]").length; break; } return len; }, //??????????????? getMessage: function(returnObj, elem) { //????????? returnObj.isValid = false; //???????????? if (typeof (elem.validator.message) == "string") { //????????????????????????????? returnObj.message = elem.validator.message; } else if (typeof (elem.validator.message[returnObj.rule]) == "string") { //??????????????????????????? returnObj.message = elem.validator.message[returnObj.rule]; } else { //??????????????????????????????????????????????????? for (var item in elem.validator.message) { returnObj.message = elem.validator.message[item]; break; } } //???????????? if (typeof (elem.validator.messageAlert) == "string") { //????????????????????????????? returnObj.messageAlert = elem.validator.messageAlert; } else if (typeof (elem.validator.messageAlert[returnObj.rule]) != "undefined") { //??????????????????????????? returnObj.messageAlert = elem.validator.messageAlert[returnObj.rule]; } else { //??????????????????????????????????????????????????? for (item in elem.validator.messageAlert) { returnObj.messageAlert = elem.validator.messageAlert[item]; break; } //?????????????????????????????? if (returnObj.messageAlert == "") { returnObj.messageAlert = returnObj.message; } } return returnObj; }, //?????????????? oneIsValid: function(elem) { //???????? var returnObj = new Object(); returnObj.isValid = true; //?????? returnObj.target = elem; returnObj.rule = ""; //?????? returnObj.message = ""; //?????? returnObj.messageAlert = ""; //?????? //????????? //???????????? for (rule in elem.validator.rules) { switch (rule) { case "required": //????????? var val = elem.val(); //????????????? if (elem.validator.rules[rule] != null) { //????????????? if (val == elem.validator.rules[rule]) { returnObj.isValid = false; returnObj.rule = rule; } } else { //??????????????????????? if (val.length == 0) { returnObj.isValid = false; returnObj.rule = rule; } } break; case "min": var len = this.getLength(elem); //??????? if (elem.validator.rules[rule] > len) { returnObj.isValid = false; returnObj.rule = rule; } break; case "max": var len = this.getLength(elem); //??????? if (elem.validator.rules[rule] < len) { returnObj.isValid = false; returnObj.rule = rule; } break; case "equalTo": //??????????? //????????????? var val = elem.val(); //?????????,????? ?????????????????? var equaTo, operate, dataType; //????????? if (typeof (elem.validator.rules[rule]) == "string") { //???????????????????????????????? == equaTo = elem.validator.rules[rule]; operate = "=="; dataType = "string"; } else { //????????????????????? target ???????? operate ?????? dataType???????? equaTo = elem.validator.rules[rule]["target"]; operate = "=="; dataType = "string"; if (typeof (elem.validator.rules[rule]["operate"]) != "undefined") { operate = elem.validator.rules[rule]["operate"]; } if (typeof (elem.validator.rules[rule]["dataType"]) != "undefined") { dataType = elem.validator.rules[rule]["dataType"]; } } //??????????????????? var equaVal = $(equaTo).val(); //???????????tring ??? number //?????????? switch (dataType) { case "string": break; case "number": val = parseFloat(val); equaVal = parseFloat(equaVal); break; case "date": val = new Date(val); equaVal = new Date(equaVal); break; } //??????????????? true switch (operate) { case "==": if (!(val == equaVal)) { returnObj.isValid = false; returnObj.rule = rule; } break; case "!=": if (!(val != equaVal)) { returnObj.isValid = false; returnObj.rule = rule; } break; case ">": if (!(val > equaVal)) { returnObj.isValid = false; returnObj.rule = rule; } break; case ">=": if (!(val >= equaVal)) { returnObj.isValid = false; returnObj.rule = rule; } break; case "<": if (!(val < equaVal)) { returnObj.isValid = false; returnObj.rule = rule; } break; case "<=": if (!(val <= equaVal)) { returnObj.isValid = false; returnObj.rule = rule; } break; } break; case "regex": //??????????? //????????????????????????????????????????????????????????????????equired????? if (elem.val() != "") { //??????????????????????????? var regexpress; try { var regexpress = eval("jQuery_Validator_RegexEnum." + elem.validator.rules[rule]); } catch (ex) { }; if (typeof (regexpress) == "undefined") { //???????????????????????? regexpress = elem.validator.rules[rule]; } var reg = new RegExp(regexpress) if (!reg.test(elem.val())) { returnObj.isValid = false; returnObj.rule = rule; } } break; case "ajax": //ajax????? //?????????????????SS var tipClass = elem.validator.tag.attr("className"); var tipHtml = elem.validator.tag.html(); //??ag???classAjax??? this.setClass(elem, "ajax", { classAjax: elem.validator.classAjax, messageAjax: elem.validator.messageAjax }); //???ajax??? //jQuery_Validator_Ajax_URL = elem.validator.rules[rule]["url"]; var beforeFun = elem.validator.rules[rule]; var ajaxURL = beforeFun(); //???????????? returnObj.isValid = false; returnObj.rule = rule; $.ajax( { cache: false, async: false, dataType: 'html', url: ajaxURL, error: function(XMLHttpRequest, textStatus, errorThrown) { var message = XMLHttpRequest.responseText; alert("?????????"); }, success: function(result) { if (result == "1") { returnObj.isValid = true; returnObj.rule = ""; } } }); //ajax?????????????? this.setClass(elem, "ajax", { classAjax: tipClass, messageAjax: tipHtml }); } //????????????????????????????????? if (returnObj.isValid == false) { return this.getMessage(returnObj, elem, rule); break; } } return returnObj; } }; //?????????????????? $.fn.formValidator = function(controlOptions) { var setting = { validatorGroup: "YK_VALIDATOR", //????????????????????????????? enable: true, //??????????? wideWord: false, //?????????????? targetOutside: false, //?????????????????orm??? targetTag: "", //???????????? targetFocus: null, rules: {}, //???????? message: {}, //????????????json messageAlert: {}, //????????????json messageShow: "", //????????????????? messageFocus: "", //????????????????? messageValid: "", //????????????????? messageAjax: "?????????,?????...", //??JAX????????? classShow: "onShow", //????????SS classFocus: "onFocus", //?????????????? classError: "onError", //????????? classValid: "onValid", //???????????? classAjax: "onLoad" //AJAX??????????? }; //???????????????????? controlOptions = controlOptions || {}; //???????????? if (typeof (controlOptions.validatorGroup) == "undefined") { controlOptions.validatorGroup = "YK_VALIDATOR"; }; var initConfig = $.validator.getInitConfig(controlOptions.validatorGroup); //???????????(??????) $.extend(true, setting, controlOptions); //????????????? //????????orm??? ??????? var form = $(initConfig.form); //????????? var tag = null; if (setting.targetOutside == true) { //????????????????????????????? tag = $(setting.targetTag); } else { //?????????????????????name+tip ????????????????????????? if (this.length == 0) { alert(this.selector + " undefined"); } var expression = "[for='" + this.get(0).name + "'][lang='tip']"; tag = form.find(expression); } //???????????????????? this.validator = setting; //????????????????????? this.validator.tag = tag; //????????????validObjects?? initConfig.validObjects.push(this); //?????????? if (setting.messageShow != "") { tag.html(setting.messageShow); } //???CSS??? tag.addClass(setting.classShow); //???????????? if (initConfig.showValid == true) { $.validator.showValid(this); } var elem = this; var srcTag = this.get(0).tagName.toLowerCase(); var stype = this.get(0).type; if (srcTag == "input" || srcTag == "textarea" || srcTag == "select") { //???focus??? this.bind("focus", function() { //?????? $.validator.focusValid(elem); }); if (setting.targetFocus != null && setting.targetFocus.length > 0) { $(setting.targetFocus).bind("focus", function () { //?????? $.validator.focusValid(elem); }); } //?????? this.bind("blur", function() { //?????? $.validator.blurValid(elem); }); if (setting.targetFocus != null && setting.targetFocus.length > 0) { $(setting.targetFocus).bind("blur", function () { //?????? $.validator.blurValid(elem); }); } //???checkbox????????nchange??? if (stype == "checkbox" || srcTag == "select") { this.bind("change", function() { elem.trigger("focus"); }); } }; }; })(jQuery);
Ms-Dos/Windows
Unix
Write backup
jsp File Browser version 1.2 by
www.vonloesch.de