PHP通过ajax

时间:2017-09-15 06:59:11

标签: php ajax

product-master.php (查看页面)中,我有几个按钮:添加,编辑,删除。

每个按钮都有唯一的名称: btnAddProduct btnEditProduct btnDelProduct

这些按钮共享相同的操作页面,如下面的ajax代码所示 action / product-master.php (是的,我根据视图页面对其进行了命名,只是不同的文件夹)

是的,我使用ajax方法处理表单数据。如何验证按下了哪个按钮?

我尝试使用isset($_POST['btnAddProduct']),但它无效。下面是我的按钮:

btnAddProduct

<input type="submit" class="btn btn-success" id="btnAddProduct" name="btnAddProduct">

产品master.php

$('#btnAddProduct').on('click', function(e) {
    var formData = new FormData($('#form-add-modal')[0]);
    $.ajax({
        url: "action/<?php echo basename(__FILE__); ?>",
        type: "POST",
        data: formData,
        contentType: false,
        processData: false,
        success: function(data) {
            console.log(data);
        },
        error: function(){
            //Display error here
        }
    });
});

1 个答案:

答案 0 :(得分:2)

从表单创建FormData时不包括按钮,因为FormData构造函数无法知道单击了哪个按钮。您需要明确地将其添加到FormData

$('#btnAddProduct').on('click', function(e) {
    var formData = new FormData($('#form-add-modal')[0]);
    formData.set(this.name, "1");
    $.ajax({
        url: "action/<?php echo basename(__FILE__); ?>",
        type: "POST",
        data: formData,
        contentType: false,
        processData: false,
        success: function(data) {
            console.log(data);
        },
        error: function(){
            //Display error here
        }
    });
});