撕掉我的头发。我有40行简单的表单,这些表单是从mysql数据库动态生成的。每个表单都有一个基于数据库ID的唯一ID。单击提交后,结果将在数据库中更新并插入div(#result)。
第一次完美地工作。但是,在第一次脚本不会序列化更新的表单数据之后。 ID很好(通过警报检查)但是formData为空(也通过警报检查)。
认为我需要以某种方式重新定位表单?任何帮助将不胜感激。感谢。
$('#result').on('click', '.submitform', function () {
var id = $(this).attr('id');
var formData = $('#'+id+'-form').serialize();
$.ajax({
type: "POST",
url: "ajax-process-form.php",
data: formData,
cache: false,
success: function(server_response){
$("#result").html(server_response).show();
}
});
return false;
});
答案 0 :(得分:0)
只是推理......我可能错了......
此代码
$('#result').on('click', '.submitform'
绑定结果上的点击事件并过滤.submitform
,然后以this
.submitform
执行
当成功来自服务器时,您正在重写#result
$("#result").html(server_response)
如果server_response
不包含.submitform
,那么下次对第一个onclick
事件的调用将无法执行,因为.submitform
<{1}}内不存在#result
< / p>
如果这是错误,那么要解决,使用另一个div显示结果而不是#result
或绑定到另一个分隔,不包含在div中
答案 1 :(得分:0)
Arrgh - 毕竟这是结构。虽然它第一次使表结构阻止它第二次工作。我不知道为什么......但你去了。谢谢你的帮助!