ajax関数をjqBootstrapValidationsubmitSuccessコールバックに入れる必要があります。
jqBootstrapValidationが送信イベントを処理するため、フォームで「送信」や「クリック」などのトリガーをバインドする必要はありません。
次のコードは自明です。
$(function() {
$('form[name="contact"]').find('input,select,textarea').not('[type=submit]').jqBootstrapValidation({
submitSuccess: function ($form, event) {
$.ajax({
type: 'POST',
url: $form.attr('action'),
data: $form.serialize(),
success: function(data)
{
// just to confirm ajax submission
console.log('submitted successfully!');
}
});
// will not trigger the default submission in favor of the ajax function
event.preventDefault();
}
});
});
プラグインの詳細については、http:
//reactiveraven.github.io/jqBootstrapValidation/をご覧ください。