我有这样的HTML:
<form>
<div id="to_receive_data">
</div>
</form>
像这样的Javascript:
$("#to_receive_data").load("./loadable/a_form_to_load.php");
当.load()完成时,DOM显示:
<form>
</form>
<div id="to_receive_data">
<input name="data_from_ajax" value"help_i_need_a_form"/>
</div>
正如您所看到的,div被移到了元素之外。
当我按提交时,操作页面不会收到任何参数。这里有一个我不知道的.load()怪癖吗?
答案 0 :(得分:0)
您假设您收到的数据有效,您可以尝试这样的方法并绕过加载方法。
$.ajax({
url: "form.php",
dataType: "text",
type: "GET",
success: function (data){
//manually insert the page
$("#to_receive_data").html(data);
}
});
答案 1 :(得分:0)
.load()方法从服务器加载数据并将返回的HTML放入匹配的元素中。有些功能支持类似的功能,如.load()。请参考以下功能。
您可以使用上述任一功能。
请参考以下示例进行实施。
$.ajax({
type: 'POST',
url: './loadable/a_form_to_load.php',
data: data,
dataType: dataType,
success: function (data){
$("#to_receive_data").html(data);
}
});
如果您想要更简化的版本,请尝试这样做。
$.post('./loadable/a_form_to_load.php', function(data) {
$("#to_receive_data").html(data);
});
希望这会帮助你。如果您有任何疑问,请随时提出。感谢