Ajax表单提交对PHP文件的增值

问题描述 投票:1回答:2

这是js

<script>
$(document).ready(function()
{
    $("#create-admin").submit(function(e)
    {
        var forms = document.getElementsByClassName('needs-validation');
        if(forms == null)
        {
                $.ajax({
                type: "POST",
                url: "crud_admin.php",
                dataType: "html",
                data: $("#create-admin").serialize()

            }).done(function(data){
                toastr.success(data, 'Success Alert', {timeOut: 5000});
            })
        }
        /**/
    })
})

这是表格

<form id="create-admin" class="needs-validation" autocomplete="off" action="crud_admin.php" method="POST" novalidate> ... </form>

这是crud_admin.phpvars和db的东西.........回复

 if($db_connection->query($sql_add)){

        echo "success";
    }else {
        echo "fail";}

[当我单击提交表单时,所有数据都转到db,它将我重定向到页面crud_admin.php。enter image description here

php jquery ajax post
2个回答
1
投票

尝试使用功能preventDefault添加一行代码。它应该放在var形式= ......

之前

https://www.w3schools.com/jsref/event_preventdefault.asp

希望它可以提供帮助。


1
投票

您可以使用这种方式,@msg怎么说,请尝试使用preventDefault()方法来防止表单的常见行为。试试这个:

$(document).on('submit', "#create-admin", function(e)
    {
        e.preventDefault();
        if($(this).hasClass('needs-validation'))
        {
           //Make validation before the ajax request
           $.ajax({
              type: "post",
              url: "crud_admin.php",
              data: $(this).serialize()
           }).done(function(data){
                toastr.success(data, 'Success Alert', {timeOut: 5000});
           })
        }
        /**/
    })

希望有帮助。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.