任务是重新加载list
div及其所有内容。
内容为space
和foo
,也是使用javascript生成的。
<div id="list-wrapper">
<div id="list">
<div class="space"></div>
<div class="foo"></div>
<div class="foo"></div>
<div class="foo"></div>
<div class="space"></div>
</div>
</div>
我试图使用
$("#list-wrapper").load(document.URL + " #list");
但这不能正常工作 - 重新加载的list
为空:
<div id="list-wrapper">
<div id="list">
</div>
</div>
我也试过
$("#list").load(document.URL + " #list");
同样,新list
为空。
该怎么做?
修改清除任务。想象一下,我们手动对网页进行了一些更改,打开Chrome开发工具并删除了3个foo
中的1个。之后,我们希望脚本会重新加载list
div,以显示所有3个foo
,而不是2。
答案 0 :(得分:0)
#list
会对同一个网址发出HTTP请求,并在没有应用任何javascript的情况下获取标记。由于您说.clone
由javascript填充,因此它将为空。
来自jQuery docs:
使用不带后缀选择器表达式的URL调用.load()时,在删除脚本之前将内容传递给.html()。这将在丢弃之前执行脚本块。但是,如果使用附加到URL 的选择器表达式调用.load(),则在更新DOM之前会删除脚本,因此不会执行脚本。
可以轻松克隆加载的元素$('#list').clone().prop('id', '#list-wrapper').appendTo('body');
。
ocamlfind list
答案 1 :(得分:0)
首先清空div的html,然后每次加载新的html。
$("#list").html( ).load(document.
URL+ "#list");
你的代码中的id选择器有空位(即#list)