jQuery Ajax POST保存删除提交

这是我的代码

//For save //For Delete
$("#form").on("submit",function (e) { e.preventDefault(); var formData = new FormData($(this)[0]); $.ajax( { url:'Master/Database/Client/RunClient.php', type: 'POST', data: formData, contentType: false, enctype: 'multipart/form-data', processData: false, beforeSend:function() { document.getElementById("loading").style.display = ""; }, complete:function() { //document.getElementById("loading").style.display = "none"; }, success:function(result) { document.getElementById("info").innerHTML = result; var n = result.search("error"); if(n < 0) /*document.getElementById("form").reset();*/ $(".input").val(''); } }); });

我可以从我的表单中获取所有数据,除了输入类型submit i make。 我不能在我的RunClient.php中使用isset($ _ POST [“save”])和isset($ _ POST [“delete”])

为提交创建单独的函数,并根据单击的按钮传递“提交类型”;

 $('#save').click(function() { submitForm('save'); }); $('#delete').click(function() { submitForm('delete'); }); function submitForm(submittype) { var formData = new FormData(); //push your form data to formData and add the submittype formData['type'] = submittype } 

在你的PHP文件中

 $submittype = $_POST['type']; // 'save' or 'delete' if($submittype == 'save') { //do save action } if($submittype == 'delete') { //do delete action } 

我用来避免按钮提交输入和更改。

  //For save  

所以,如果有人deavtivate javscript表单将不提交。

你可以像这样发送数据:

 data: { foo: 'var' foo2: 5 }, 

编辑。 对不起误解了你的问题。 只需使用javascript控制单击哪个按钮并使用隐藏字段指定值。

‘$(“#form”)。on(“submit”,function(e)’将函数替换为

$(“#save”)。click(function(){

});

$(“#delete”)。click(function(){

});