-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathvalidForm.min.js
1 lines (1 loc) · 6.74 KB
/
validForm.min.js
1
!function($){$.fn.extend({validForm:function(optionsPlugin,callback){return this.each(function(){function debug(o){parametres.debug?console.log(o):""}function getExtension(o){var t=o.split(".");return"."+t[t.length-1]}function validSimpleInput(inputElem){var params={};try{eval("params = "+$(inputElem).attr("rules-input"))}catch(e){}var tmpOptions=$.extend({active:!1,errorSelector:"",errorMsg:"",addClass:"",callFunction:"",regExp:".*"},params),options=$.extend({},parametres,tmpOptions);if(debug(options),options.active){if(new RegExp(options.regExp,"i").test($(inputElem).val())){if(""!=options.addClass?$(inputElem).removeClass(options.addClass):"",""!=options.errorSelector){var errorSelector=$(options.errorSelector);errorSelector[options.animationHide](options.animationOptionHide,function(){""!=options.errorMsg?errorSelector.text(""):""})}return""!=options.callFunction?window[options.callFunction](!0):"",!0}if(""!=options.addClass?$(inputElem).addClass(options.addClass):"",""!=options.errorSelector){var errorSelector=$(options.errorSelector);""!=options.errorMsg?errorSelector.text(options.errorMsg):"",errorSelector[options.animationShow](options.animationOptionShow)}return""!=options.callFunction?window[options.callFunction](!1):"",!1}return!0}function validCheckboxInput(inputElem){var params={};try{eval("params = "+$(inputElem).attr("rules-input"))}catch(e){}var tmpOptions=$.extend({errorSelector:"",errorMsg:"",addClass:"",callFunction:"",active:!1},params),options=$.extend({},parametres,tmpOptions);if(debug(options),options.active){if(inputElem.is(":checked")){if(""!=options.addClass?$(inputElem).removeClass(options.addClass):"",""!=options.errorSelector){var errorSelector=$(options.errorSelector);errorSelector[options.animationHide](options.animationOptionHide,function(){""!=options.errorMsg?errorSelector.text(""):""})}return""!=options.callFunction?window[options.callFunction](!0):"",!0}if(""!=options.addClass?$(inputElem).addClass(options.addClass):"",""!=options.errorSelector){var errorSelector=$(options.errorSelector);""!=options.errorMsg?errorSelector.text(options.errorMsg):"",errorSelector[options.animationShow](options.animationOptionShow)}return""!=options.callFunction?window[options.callFunction](!1):"",!1}return!0}function validRadioInput(formSelector,inputElem){var params={};try{eval("params = "+$(inputElem).attr("rules-input"))}catch(e){}var tmpOptions=$.extend({active:!1,errorSelector:"",errorMsg:"",addClass:"",callFunction:"",name:""},params),options=$.extend({},parametres,tmpOptions);if(debug(options),options.active&&""!=options.name){var isChecked=!1;if(formSelector.find("input[name='"+options.name+"']").each(function(){!isChecked&&$(this).is(":checked")&&(isChecked=!0)}),isChecked){if(""!=options.addClass?$(inputElem).removeClass(options.addClass):"",""!=options.errorSelector){var errorSelector=$(options.errorSelector);errorSelector[options.animationHide](options.animationOptionHide,function(){""!=options.errorMsg?errorSelector.text(""):""})}return""!=options.callFunction?window[options.callFunction](!0):"",!0}if(""!=options.addClass?$(inputElem).addClass(options.addClass):"",""!=options.errorSelector){var errorSelector=$(options.errorSelector);""!=options.errorMsg?errorSelector.text(options.errorMsg):"",errorSelector[options.animationShow](options.animationOptionShow)}return""!=options.callFunction?window[options.callFunction](!1):"",!1}return!0}function validFileInput(inputElem){var isFileCorrect=!0,params={};try{eval("params = "+$(inputElem).attr("rules-input"))}catch(e){}var tmpOptions=$.extend({active:!1,errorSelector:"",errorMsg:"",addClass:"",callFunction:"",extensions:"",size:"",regExp:""},params),options=$.extend({},parametres,tmpOptions);if(debug(options),options.active){if(""!=options.extensions&&isFileCorrect&&(isFileCorrect=jQuery.inArray(getExtension(inputElem.val()),options.extensions.split("|"))>-1?!0:!1),""!=options.size&&isFileCorrect&&null!=inputElem[0].files[0]&&(isFileCorrect=parseInt(inputElem[0].files[0].size)>parseInt(options.size)?!1:!0),""!=options.regExp&&isFileCorrect&&(isFileCorrect=new RegExp(options.regExp,"i").test($(inputElem).val())?!0:!1),isFileCorrect){if(""!=options.addClass?$(inputElem).removeClass(options.addClass):"",""!=options.errorSelector){var errorSelector=$(options.errorSelector);errorSelector[options.animationHide](options.animationOptionHide,function(){""!=options.errorMsg?errorSelector.text(""):""})}""!=options.callFunction?window[options.callFunction](!0):""}else{if(""!=options.addClass?$(inputElem).addClass(options.addClass):"",""!=options.errorSelector){var errorSelector=$(options.errorSelector);""!=options.errorMsg?errorSelector.text(options.errorMsg):"",errorSelector[options.animationShow](options.animationOptionShow)}""!=options.callFunction?window[options.callFunction](!1):""}return isFileCorrect}return!0}var defauts={debug:!1,animationShow:"fadeIn",animationHide:"fadeOut",animationOptionShow:"slow",animationOptionHide:"slow",formSelector:$(this)},parametres=$.extend(defauts,optionsPlugin);debug(parametres),parametres.formSelector.find("input[type='submit']").click(function(){var isFormValidate=!0;return parametres.formSelector.find("input").each(function(){switch(this.type){case"file":validFileInput($(this))?"":isFormValidate=!1;break;case"radio":validRadioInput(parametres.formSelector,$(this))?"":isFormValidate=!1;break;case"checkbox":validCheckboxInput($(this))?"":isFormValidate=!1;break;case"submit":break;default:validSimpleInput($(this))?"":isFormValidate=!1}}),parametres.formSelector.find("select").each(function(){var params={};try{eval("params = "+$(this).attr("rules-input"))}catch(e){}var tmpOptions=$.extend({active:!1,errorSelector:"",errorMsg:"",addClass:"",callFunction:"",errorValue:""},params),options=$.extend({},parametres,tmpOptions);if(debug(options),options.active)if($(this).val()==options.errorValue){if(""!=options.addClass?$(inputElem).addClass(options.addClass):"",""!=options.errorSelector){var errorSelector=$(options.errorSelector);""!=options.errorMsg?errorSelector.text(options.errorMsg):"",errorSelector[options.animationShow](options.animationOptionShow)}""!=options.callFunction?window[options.callFunction](!1):"",isFormValidate=!1}else{if(""!=options.addClass?$(inputElem).removeClass(options.addClass):"",""!=options.errorSelector){var errorSelector=$(options.errorSelector);errorSelector[options.animationHide](options.animationOptionHide,function(){""!=options.errorMsg?errorSelector.text(""):""})}""!=options.callFunction?window[options.callFunction](!0):""}}),parametres.formSelector.find("textarea").each(function(){validSimpleInput($(this))?"":isFormValidate=!1}),void 0!==callback&&callback(isFormValidate),isFormValidate?void 0:!1})})}})}(jQuery),$(document).ready(function(){$("body").find("form").each(function(){"validForm"==$(this).attr("rule-form")&&$(this).validForm()})});