我正在使用PHP / Ajax / serialize向自身提交一个简单的表单。我使用以下JavaScript对其进行设置以序列化/发布数据。您可以在https://www.dottedi.biz/demo/code/public/addtocart.php上查看演示。有一个指向脚本的.txt版本的链接。
$(function() {
var form = $("#addtocart");
$(form).submit(function(e) {
e.preventDefault();
var formData = $(form).serialize();
$("#result").html( "" );
$.ajax({
type: "POST",
url: $(form).attr("action"),
data: formData,
success: function(html) { $("#result").html(html); }
})
});
});
点击立即购买按钮时,它应该只向数据库添加一行。首次单击该按钮时,它会添加一行。如果再次单击,它将添加两个新行,然后添加三个新行,依此类推。如果单击提交,它将依次添加更多行。要停止此操作,必须重新加载表单。
答案 0 :(得分:-1)
将按钮的ID放入id = "addtocart_id"
$(function() {
var form = $("#addtocart");
var count_btn = true;
form.submit(function(e) {
e.preventDefault();
if(count_btn){
var formData = form.serialize();
$("#result").html("");
$.ajax({
type: "POST",
url: form.attr("action"),
data: formData,
beforeSend: function () {
$("#addtocart_id").html("Please Wait...").prop("disabled", true);
},
success: function(html) { $("#result").html(html); }
complete: function(){
count_btn = false;
$("#addtocart_id").html("Now Reload from browser");
}
})
}
});
});