使用表单提交通过ajax jQuerypost保存数据

我有一个表单,我想通过ajax jQuerypost保存数据。 如果保存按钮是type="submit" ,它不会做任何这个只是空警报…我想保存数据并保持在同一个表单上刷新字段…

这是我尝试过的:

 $("#saveNewContact").click(function () { var name = $("#name").val(); var last_name = $("#last_name").val(); $.post("ajax_files/save_mydeals.php", {name: name, last_name: last_name}, success: function(msg){ alert(msg); }); }); 

这是我的表格

 

这样做吧

HTML

 

你的jQuery

 $("#update").click(function(e) { e.preventDefault(); var name = $("#name").val(); var last_name = $("#last_name").val(); var dataString = 'name='+name+'&last_name='+last_name; $.ajax({ type:'POST', data:dataString, url:'insert.php', success:function(data) { alert(data); } }); }); 

所以在insert.php页面中

  

希望这能给出一个想法

你不需要click事件来删除$("#saveNewContact").click(function () {并使用.submit() jQuery方法。

还可以使用.serialize,它允许您使用值序列化表单字段并创建urlencoded dataString。

 $("#myForm").on("submit",function (e) { e.preventDefault(); var formData = $(this).serialize(); $.ajax( { type:'post', url:'receiver url', data:formData, beforeSend:function() { launchpreloader(); }, complete:function() { stopPreloader(); }, success:function(result) { alert(result); } }); }); 

绑定表单的提交而不是$ .post必要的成功,function就足够了:

 $(function() { $("#myForm").on("submit",function (e) { e.preventDefault(); // stop the normal submission var name = $("#name").val(); var last_name = $("#last_name").val(); $.post("ajax_files/save_mydeals.php", {name: name, last_name: last_name}, function(msg){ alert(msg); $("#name").empty(); $("#last_name").empty(); }); }); });