我想知道为什么我可以使用.load
向页面加载非常具体的信息,但是当我尝试回读加载的信息时,我刚刚返回null
这是我用来加载这些信息的jquery
$(function(){
$('#code').load('stuff.html #specificstuff');
});
这是我用来重复#code
var content = document.getElementById('#code');
document.write(content);
但是当这个运行时,我只是回到null
答案 0 :(得分:2)
document.getElementById('#code');
应该是
document.getElementById('code');
有人说......我不知道为什么你首先使用document.write
。
你需要等待负载完成,所以这样做会更有意义:
$('#code').load('stuff.html #specificstuff', function(){
var content = document.getElementById('code').html();
document.write(content);
});
答案 1 :(得分:0)
$.load()
是异步的,所以你的代码是:
var content = document.getElementById('#code');
document.write(content);
在加载实际内容之前执行。
将它放在这样的回调函数中:
$(function(){
$('#code').load('stuff.html #specificstuff', function(){
var content = document.getElementById('code');
document.write(content);
});
});
所以在内容完成加载后执行
。也就是说,document.write(content);
在这种情况下是无效的,因为$('#code').load()
将id="code"
元素的内容替换为文件#specificstuff
的内容{ {1}}。