Jquery .load()释放已加载html元素的层次结构
我几乎解决了用jquery(1.8.0)部分加载html的任务 这是我将从服务器收到的html:Jquery .load()释放已加载html元素的层次结构,jquery,Jquery,我几乎解决了用jquery(1.8.0)部分加载html的任务 这是我将从服务器收到的html: <form id="save-form" action="/sales_item/edit/9/" method="post"> <p> <label for="id_item_description">Item Description:</label> <input id="id_item_description" ty
<form id="save-form" action="/sales_item/edit/9/" method="post">
<p>
<label for="id_item_description">Item Description:</label>
<input id="id_item_description" type="text" maxlength="40" value="test2y" name="item_description">
</p>
<input type="submit" value="save">
</form>
,层次结构完全丢失,请参见如何在内容之前关闭表单标记
<tr>
<form id="save-form" action="/sales_item/edit/9/" method="post"></form>
<p>
<label for="id_item_description">Item Description:</label>
<input id="id_item_description" type="text" maxlength="40" value="test2y" name="item_description">
</p>
<input type="submit" value="save">
</tr>
项目说明:
你知道我在加载时做错了什么吗?A
不能包含
元素。大多数浏览器都试图在一定程度上解决这个问题,但它不可靠,而且显然是无效的
您需要首先创建一个
:
$("<td>").appendTo(row).load(...);
$(“”)。追加到(行)。加载(…);
表格行只能包含表格单元格。不过,我不确定这是否导致了这个问题。(首先尝试将表单包装成
)这就是我的朋友的答案。谢谢。:)请插入它以便我可以勾选它。我是这样做的:var target=$('').appendTo(row)
然后target.load(…)
这是一个好方法吗?是的,这基本上也是我想到的:)我还意识到为了部分加载的目的,需要删除tr的内容<代码>变量行=$(this).closest('tr').empty()代码>:)
$("<td>").appendTo(row).load(...);