jQuery验证插件-传递函数作为参数
我正在编写一个jQuery插件来验证表单。该插件工作得很好,但我希望能够定义表单验证后会发生什么。所以我希望能够将函数作为参数传递。该函数将包含一系列实际提交表单的内容。验证成功时需要调用该参数 在HTML文件中调用的插件:jQuery验证插件-传递函数作为参数,jquery,html,plugins,Jquery,Html,Plugins,我正在编写一个jQuery插件来验证表单。该插件工作得很好,但我希望能够定义表单验证后会发生什么。所以我希望能够将函数作为参数传递。该函数将包含一系列实际提交表单的内容。验证成功时需要调用该参数 在HTML文件中调用的插件: <script> $(document).ready(function(){ $('#cForm').shdValidate({ success : formSubmit() }); }); </script>
<script>
$(document).ready(function(){
$('#cForm').shdValidate({
success : formSubmit()
});
});
</script>
如您所见,我已经评论了插件中需要调用参数的位置。目前我无法让它工作。您需要做两个更改
$(document).ready(function(){
$('#cForm').shdValidate({
success : formSubmit
});
});
及
啊啊,耶,啊。干杯,伙计。6分钟后一个滴答声向你走来。
$(document).ready(function(){
$('#cForm').shdValidate({
success : formSubmit
});
});
(function($) {
$.fn.shdValidate = function(options) {
//==== SETTINGS
var shdValidateSuccess = $.extend(options).success,
form = this;
//==== SUBMIT CLICK
this.children('input[type=submit]').click(function(){
//variables
var shdRequired = $(form).children('.required'),
shdValid = 0;
//validated fields
$(shdRequired).each(function(){
$(this).removeClass('shdValidateAlert');
if ($(this).val() == '' || $(this).val() == $(this).attr('placeholder')){ $(this).addClass('shdValidateAlert'); }
else { shdValid += 1; }
});
//outcome
if (shdValid == $(shdRequired).length) {
//THE SUCCESS PARAMETER NEEDS TO BE CALLED HERE SOMEHOW
if($.isFunction(shdValidateSuccess)){
shdValidateSuccess(form);
}
}
return false;
});
}
}(jQuery));