我有一个jQuery ajax函数。回调函数包含两个函数:
1)获取ajax结果(这是一个html表单)并将其作为html span的内部html插入。 2)提交此表格
如何确保在JavaScript尝试提交表单之前加载表单?
代码:
$("select").live("change", function(){
FormUpdate();
})
function FormUpdate() {
$.ajax({
type: "POST",
url: "index.php?UpdateForm=Yes",
data: $("#Form").serialize(),
success: function(msg){
$("span#Content").html(msg);
$("#Form").submit();
}
});
}
我的问题是因为javascript尝试在加载表单并提交数据之前提交表单。
答案 0 :(得分:1)
只需简单地设置获取ajax结果的函数并插入前面的DOM和后面的表单提交功能。
只有在插入完成后,才会调用下一个函数。
示例:
$.ajax({
type: "POST",
url: "backend.php",
data: "name=John",
dataType: "json"
success: function(msg){
$("#thediv").html(msg.html);
$("form#theform").submit();
}
});
答案 1 :(得分:0)
DOM操作是同步的,因此表单之前不会提交。您是否遇到此方案的特定问题?如果是这样,请发布大量代码:)