如何在h3标记之后获取数据

时间:2015-03-18 09:34:12

标签: jquery

我有一个div

 <div class="Itm_discrp" style="display:block;">
      <h3>Applle Drink</h3>
      Hai i am very tasty
   </div>

我需要将文字取为“海我非常好吃”

我尝试了如下所示

   var item_description = $(this).closest('.lastItm_Wrap').find('.Itm_discrp h3').text().trim();

但我得到了Applle Drink

在这种情况下,请你告诉我如何获取文字“Hai i is very tasty”而不是“Applle drink”

http://jsfiddle.net/cod7ceho/45/

3 个答案:

答案 0 :(得分:7)

这是一个文本节点,因此您可以获取h3元素的nextSibling,然后获取其内容

var item_description = $('.Itm_discrp h3')[0].nextSibling.nodeValue.trim();

演示:Fiddle

答案 1 :(得分:3)

组合.contents().filter()

&#13;
&#13;
var text = $('.Itm_discrp').contents().filter(function(){
    return this.nodeType == 3;
}).text();

alert(text);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="Itm_discrp" style="display:block;">
      <h3>Applle Drink</h3>
      Hai i am very tasty
   </div>
&#13;
&#13;
&#13;

答案 2 :(得分:1)

Yu也可以尝试这个jquery代码:

var item_description = $('.Itm_discrp').contents().eq(2).text();

请参阅Fiddle Demo

contents() - 获取匹配元素集中每个元素的子元素,包括文本和注释节点。

eq() - 将匹配元素集减少到指定索引处的元素。