我有一个与Ajax请求相关的表单。我使用验证jQuery插件进行表单检查。 因此,当我单击提交按钮时,ajax调用不起作用。再次单击提交按钮后,它开始工作。 为什么会这样?
这是我的表格
printf
我的带有验证功能的ajax功能
<form action="" id="anyQuestion" class="form-row">
@csrf
<input type="hidden" name="slug" value="{{$page->slug}}">
<div class="form-group col-12">
<input type="text" name="name" placeholder="name" class="form-control">
</div>
<div class="form-group col-6">
<input type="text" name="email" placeholder="mail" class="form-control">
</div>
<div class="form-group col-6">
<input type="text" name="phone" placeholder="phone" class="form-control">
</div>
<button class="submit-button mb-4 mt-2 w-100">submit</button>
</form>
答案 0 :(得分:0)
这两行:
http
位于您的提交处理程序中,但它们是首先设置提交处理的内容。因此,似乎您的第一个按钮单击是调用 var anyQuestionForm = $('#anyQuestion');
anyQuestionForm.submit(function (e) {
,然后它会设置表单的Submit事件处理程序,以便再次单击将提交AJAX请求。
它们应该在submitHandler
函数中:
document.ready()
或者,由于您的$(function(){
var anyQuestionForm = $('#anyQuestion');
anyQuestionForm.submit(function (e) { . . .
});
中已经有submit
回调,因此您甚至不需要submitHandler
回调,只需执行以下操作:
submit