我有一个form;
<div id="mainDiv">
<form>
<input name="input1" />
<input name="input2" />
<input name="input3" />
<input name="input4" />
<button id="showForm">Show Form</button>
<button id="sendForm">Submit Form</button>
</form>
</did>
这是我的jQuery插件。
(function(o){
o.fn.validateInputs = function(options){
var settings = $.extend({
submitButton:'',
submitFunction : function(){
return ""
},options);
$(settings.submitButton).on('click',function(){
//......run the FunctionOfChoiceHere!
//...I tried.
console.log(settings.submitFunction) // This logs an Empty Function
})
}
})(jQuery);
和将军jQuery:
$('#showForm').on('click',function(){
$('#mainDiv').fadeIn()
var form = $(this).closest('form');
var formData =$(form).serialize();
$('input',form).validateInputs({
submitFunction :myFunctionOfChoice(formData),
submitButton:'#submitForm'
})
})
现在myFunctionOfChoice.
function myFunctionOfChoice(data){
console.log(data);
}
问题是,当单击showForm按钮时,它会自动运行myFunctionOfChoice数据logs......这正是我不想要的。我要求的是,只有当我点击按钮时才console应该这样做。我怎样才能做到这一点?logsubmitForm
任何帮助表示赞赏!