Jquery 如何在Laravel6中使用Ajax提交表单?
我正在尝试使用ajax提交表单,但我正在归档,当我单击提交按钮时,它不是使用ajax提交的,而是使用表单方法提交的。请让我知道我错在哪里 以下是我的Ajax表单数据:Jquery 如何在Laravel6中使用Ajax提交表单?,jquery,ajax,laravel,laravel-6,laravel-6.2,Jquery,Ajax,Laravel,Laravel 6,Laravel 6.2,我正在尝试使用ajax提交表单,但我正在归档,当我单击提交按钮时,它不是使用ajax提交的,而是使用表单方法提交的。请让我知道我错在哪里 以下是我的Ajax表单数据: <script> $("#query_form").submit(function(event) { event.preventDefault(); //alert('dd'); var forData = $('form#query_form').serialize();
<script>
$("#query_form").submit(function(event) {
event.preventDefault();
//alert('dd');
var forData = $('form#query_form').serialize();
var url = $('form#query_form').prop('action');
$.ajax({
url: url,
data:forData,
type: "POST",
dataType: 'JSON',
headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
success: function( response ) {
alert('dd');
$('#send_form').html('Submit');
$('#res_message').show();
$('#res_message').html(response.msg);
$('#msg_div').removeClass('d-none');
document.getElementById("query_form").reset();
setTimeout(function(){
$('#res_message').hide();
$('#msg_div').hide();
},10000);
}
});
});
$(“#查询表格”).submit(函数(事件){
event.preventDefault();
//警报(“dd”);
var forData=$('form#query _form')。serialize();
var url=$('form#query _form').prop('action');
$.ajax({
url:url,
数据:forData,
类型:“POST”,
数据类型:“JSON”,
标题:{'X-CSRF-TOKEN':$('meta[name=“CSRF-TOKEN”]')。attr('content')},
成功:功能(响应){
警报(“dd”);
$('send#u form').html('Submit');
$('res#u message')。show();
$('res#u message').html(response.msg);
$('msg_div').removeClass('d-none');
document.getElementById(“查询表单”).reset();
setTimeout(函数(){
$('res#u message')。隐藏();
$('msg_div').hide();
},10000);
}
});
});
这里是表单视图数据
<form name="callback" id="query_form" method="post" action="{{url('/postEmail')}}">
@csrf
<div class="form-section3 left"><i class="fa fa-user-o" aria-hidden="true" style="font-size: 18px; color: #fff;"></i>
<input name="user_name" type="text" placeholder="Your Name" class="inputxt" required="">
</div>
<div class="form-section3 left"><i class="fa fa-mobile" aria-hidden="true" style="font-size: 22px; color: #fff;"></i>
<input name="user_phone" type="number" pattern="[789][0-9]{9}" placeholder="Mobile No" class="inputxt" required="">
</div>
<div class="form-section3 left"><i class="fa fa-at" aria-hidden="true" style="font-size: 22px; color: #fff;"></i>
<input name="user_email" type="email" class="inputxt" placeholder="Email ID" required="">
<input name="project" id="project" type="hidden" value="Aipl Joy Square">
</div>
<div class="alert alert-success d-none" id="msg_div">
<span id="res_message"></span>
</div>
<div class="form-section3 left">
<input type="submit" value="Submit" id="send_form" name="send" class="btn-submit">
</div>
</form>
@csrf
脚本是在页面的末尾还是开头
我这样问是因为如果它在开始时,则在加载DOM之前设置了$(“#query_form”).submit
侦听器,因此看不到#query_form
元素
我建议您使用较新的语法
$('form')。在('submit',函数(e){
,或者在js代码周围加上$(文档)。ready(函数(){
),或者两者都加。这是js问题。如果有错误,请检查web控制台