从具有相同类的所有元素中获取文本

Dir*_*ign 10 jquery

在使用这个地图插件制作显示商店位置的美国地图时,我已经将其固定,但想要更好的方法来执行一个功能.我在地图下面有一个商店列表,并希望将所有商店分组到相同的状态,并在将鼠标悬停在状态上时在边栏中显示商店名称.我有悬停和显示数据工作,但希望改进.我不想仅为每个状态编写一个函数并明确说明要显示的内容,而是希望p.cn从每个具有相同类的div中获取第一个函数.

<div class="texas">
    <p class="cn">Store 1</p>
</div>

<div class="texas">
    <p class="cn">Store 2</p>
</div>

mouseoverState: {
    var texas = $('.texas > p.cn').text();
    $('#mysidebarID').html(texas);
}
Run Code Online (Sandbox Code Playgroud)

这只是显示第一个商店"商店1"我无法p.cn从每个div.texas中获取它并在每个商店<br>之后显示它们.

如何从具有相同类的每个元素中获取html并将其组合成一个字符串,每个节点用<br>?分隔?

谢谢 - 让我知道我是否需要澄清任何事情.

und*_*ned 24

您可以使用该each()方法,尝试以下方法:

var str = "";

$('.texas > p.cn').each(function(){
  str += $(this).text() + "<br>";
})

$('#mysidebarID').html(str);
Run Code Online (Sandbox Code Playgroud)

  • 男人,这是好东西.非常感谢,并吸取了教训! (4认同)