jQuery.html()不选择某些电子邮件

jQuery .html() does not select some emails?

本文关键字:电子邮件 选择 html jQuery      更新时间:2023-09-26

嗨,我开始使用jQuery,当我尝试选择div中的内容时,有些电子邮件没有被选中?我正在使用Safari的控制台来执行jQuery代码。我用.text()得到了想要的结果,但为什么.html()不起作用?

jQuery

$("input[type=checkbox]:checked").parents('.organizer_listing').find('.organizer_listing_contact_email')

结果

[
<div class=​"organizer_listing_contact_email">​ciara@bhre.net​</div>​
, 
<div class=​"organizer_listing_contact_email">hihi-p38sn-2788580457@somewhere.org​</div>​
, 
<div class=​"organizer_listing_contact_email">hihi-2xxtn-2783323299@someowhere.org​</div>​
]

jQuery

$("input[type=checkbox]:checked").parents('.organizer_listing').find('.organizer_listing_contact_email').html()

结果

"ciara@bhre.net"

访问器方法(其中大多数也可以是赋值函数,但无论如何)将只对结果集中的第一项起作用。

也就是说,.html()将为您提供集合中第一个项目的html,就像.attr('href')将为您带来第一个项目href属性一样。

相反,您可能希望使用.map

...find('.organizer_listing_contact_email').map(function () {
    return $(this).html();
}).get();

.find()返回jQuery对象的集合。您需要迭代该集合中的元素。你可以使用.each()来做到这一点:

var $emails = $("input[type=checkbox]:checked").parents('.organizer_listing').find('.organizer_listing_contact_email');
$emails.each(function() {
    console.log($(this).text());
});