问题

我正在尝试保存数据,但我的页面在下一页上使用json消息重新加载,如何停止重新加载页面.

Ajax代码:

 jQuery(document).ready(function($)  {
    $("#add-data").submit(function (event)  {
event.preventDefault();
        $.ajax({
            type: "POST",
            url: "teachers",
            dataType: 'json',
            headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') },
            data:  $(this).serialize(),
                success: function (data) {
                    alert("Added");


            },
        });
    });
});
 

提交按钮:

 <button type="submit"  class="btn btn-secondary btn-lg shadow-lg rounded" value="ADD" id="add-data"> <span class=" fa fa-plus"> </span> ADD</button>
 

存储控制器:

保存后工作正常:

 return response()->json([
            'status' => 'success',
            'msg' => 'New esecond has been saved'
        ]);
 

  最佳答案

这是因为你试图发布数据来形成。 如果您使用 button type = "submit",它将重定向到某个地方。 您应该避免使用 type = "submit"。 相反,使用type = "button"

 <button type = "button" class="btn btn-secondary btn-lg shadow-lg rounded" value="ADD" id="add-data"> <span class=" fa fa-plus"> </span> ADD</button>
 

并通过使用按钮的单击事件来实现它。

然后在jquery中获取它.

 $("#add-data").click(function (event)  {
    //Your code here 
}
 

  相同标签的其他问题

ajaxlaravel