jQuery-对$(this.find(";.event_recur";).html()有问题

jQuery-对$(this.find(";.event_recur";).html()有问题,jquery,jquery-selectors,Jquery,Jquery Selectors,我正在尝试在.event\u中获取html $(".entry").each(function(){ alert($(this).find(".event_recur").html()); }); <div class="entry"> <p class="event_title">June 21st Event - eat</p> <p class="event_start_date">1277160289</p> <p

我正在尝试在.event\u中获取html

$(".entry").each(function(){
alert($(this).find(".event_recur").html());
});


<div class="entry">
<p class="event_title">June 21st Event - eat</p>

<p class="event_start_date">1277160289</p>
<p class="event_end_date">1277505889</p>
<p class="event_body"><p>June 21-25th
</p></p>
<p class="event_recur"><p>No
</p></p>
<p class="event_body"><p>June 21-25th
</p></p>

<p class="event_location"><p>Pac Sun
</p></p>
<p class="event_categories">
Eat
</p>

</div>
我期待着:

<p>No
    </p>


我错过什么了吗?谢谢

您缺少一个准备好文档的闭包;i、 e.将调用更改为:

$(function(){
  $(".entry").each(function(){
    alert($(this).find(".event_recur").html());
  });
});

(仅供参考,
$(function(){});
$(document)的别名。ready(function(){});

您缺少一个document ready闭包;i、 e.将调用更改为:

$(function(){
  $(".entry").each(function(){
    alert($(this).find(".event_recur").html());
  });
});

(仅供参考,
$(function(){});
$(document)的别名。ready(function(){});

No
现在不在任何段落标记中。它超出了您想要的

No
现在不在任何段落标记中。它超出了您想要的

请尝试这样包装您的函数:

$(function () {
  $(".entry").each(function(){
    alert($(this).find(".event_recur").html());
  });
});

这将延迟执行,直到加载DOM之后。

尝试将函数包装为:

$(function () {
  $(".entry").each(function(){
    alert($(this).find(".event_recur").html());
  });
});

这将延迟执行,直到加载DOM之后。

HTML5 Doctype的情况看起来是这样的:嵌套p标记导致选择器出现问题。我不确定到底是什么原因,但我将.event转换成了一个div,它可以很好地输出html!对!


self注意:不要用HTML5 doctype嵌套p标记。我不能肯定这是doctype,但也许其他人可以澄清。

HTML5 doctype的情况是:嵌套p标记导致选择器出现问题。我不确定到底是什么原因,但我将.event转换成了一个div,它可以很好地输出html!对!


self注意:不要用HTML5 doctype嵌套p标记。我不能肯定这是doctype,但也许其他人可以澄清。

其他答案给出的doc ready同样正确。这里有两个问题。噢。哈读书很有趣!早些时候,它看起来像

No,但我一定是看错了。使用HTML5 doctype,当使用.html()获取html时,它会去掉嵌套的段落标记。这就是为什么它会返回空白。其他答案给出的准备好文档的东西也是正确的。这里有两个问题。噢。哈读书很有趣!早些时候,它看起来像

No,但我一定是看错了。使用HTML5 doctype,当使用.html()获取html时,它会去掉嵌套的段落标记。这就是为什么它会回来空白。对不起,我应该张贴。我在$(document).ready(function(){code here})中有所有这些;对不起,我应该把它寄出去。我在$(document).ready(function(){code here})中有所有这些;嘿,gddc,我确实在$(document.ready)(function(){})中有这些;如果我提醒.event\u start\u date,我将返回html中的值。然而,由于.event\u有一个p标记,因此它不起作用:“
标记的存在不应影响jQuery的html()函数。在您最初的帖子中,您的警报中有一个输入错误(缺少最后一个结束参数),但是如果这是在您的实际文档中,那么如果您使用任何东西来跟踪这类事情,它应该会在像FireBug这样的工具中引发一个错误;如果我提醒.event\u start\u date,我将返回html中的值。然而,由于.event\u有一个p标记,因此它不起作用:“
标记的存在不应影响jQuery的html()函数。在您最初的帖子中,您的警告中有一个输入错误(缺少最后的结束部分),但是如果您的实际文档中有这个错误,那么如果您正在使用任何东西来跟踪这类事情,就会在FireBug之类的实用程序中引发一个错误。所有这些代码都在doc ready中。如果我提醒.event\u start\u date,我将返回html中的值。然而,似乎自。event_recur有一个p标记,它不起作用:/请查看我的答案。该p标记中没有任何信息。所有这些代码都在doc ready中。如果我提醒.event\u start\u date,我将返回html中的值。然而,似乎自。event_recur有一个p标记,它不起作用:/请查看我的答案。该p标记中没有任何信息。