2011-01-24 44 views
2

我一直在处理项目问题一段时间。基本上,我用.html()加载条目到div。这一切都看起来不错,但我试图获得:first-child的价值,除非将条目直接放入HTML(如源文件中),否则它将无法工作 - 但我无法这样做,因为条目需要动态加载(通过JS)。jQuery - 将HTML插入div,然后获取插入的HTML的第一个孩子

所以,我去看看页面的来源,看看发生了什么,没有什么出现在div我的条目被加载。我检查了Firebug,结果显示它们在div之内。该网页本身显示他们在div之内。但页面源没有。

为什么jQuery加载的HTML不会出现在页面源代码中?

更新


好吧,你们回答为什么 - 所以,我想我真正的问题是“如何”做我想要做的事 -

div负荷若干条目#inner-wrap看起来有点像:

<div class="entries"> 
    <input type="submit" value="1295843239" style="display: none;" class="realtime"> 
    <span class="time">1295843239:</span> 
    <span class="name">Name: </span> 
    <span class="message">this is an entry...</span> 
</div> 

我怎么会选择#内包的第一个孩子的input的价值?

我正在使用$("#inner-wrap :first-child .realtime").val(),但是在条目动态加载时不起作用。 Here's所有相关的代码,以及here's到目前为止我所拥有的“活”位。这远远没有完成,但我需要能够得到最后评论的时间来检查新评论。

+0

我想你,但我的JavaScript和HTML是我的预览空白添加代码,那里有只一个大灰盒子.. – 2011-01-24 04:52:51

+0

我看到两条线。 = /。你可以尝试http://pastebin.com/并发布链接? – Andrew 2011-01-24 04:56:38

+0

看看你在pastebin上的代码,你在哪里调用函数insert_last_ten()? – Lance 2011-01-24 05:06:41

回答

6

使用jQuery时,动态html不会显示在源代码中,除非发生回发。您需要使用Firebug等工具来验证内容,或者通过添加表单并张贴到同一页面来强制回发。

<form id="myform" method="post" action="test.html"> 
<div id="mycontent"> 
</div> 
</form> 

<script> 
$('#mycontent').html('Hello World!'); 
$('#myform').submit(); 
</script> 
4

加载页面中的“查看源文件”视图没有显示出来,因为,简单地说,它不是在页面的源代码之后的东西添加到DOM。使用Firebug或Chrome检查器工具查看DOM。

如果您需要帮助,请发布实际问题的详细信息。与你的代码相比,你有更多的可能性,那就是有一个jQuery的bug,但是如果你发布了你的东西,人们就有可能找到它。

1

我已经创建了一个脚本,它将根据实际数据对整个html文件进行编码。看看here看看它是如何完成的。

或者你可以打开Firebug并保存萤火具有通过右键点击<HTML>源然后保存HTML