如何在没有特定子元素的情况下获取 div 中的内容

4
<div class="news"> 
    i need this content

   <figure class="summary">
     i dont need this content
    </figure>

 </div>

我希望在类 .news 中获得“我需要这个内容”,但不包括类.summary中的“我不需要这个内容”。
$("div.news").not("figure.summary").text()

我尝试了这个 jQuery,但仍然在 figure 标签中获取文本。
5个回答

5

alert($("div.news").contents().not("figure.summary").text());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="news"> 
    i need this content

   <figure class="summary">
     i dont need this content
    </figure>

 </div>

您应该使用contents()来包含文本节点:
$("div.news").contents().not("figure.summary").text()

如果您只想获取文本节点,而不通过特定类别、类型等进行过滤…:

$("div.news").contents().not("div.news *").text()

了解更多关于 .contents() 的内容请访问:http://api.jquery.com/contents/


2
您可以使用 .contents() 获取文本节点,然后可以使用 .filter() 进行筛选并执行所需操作。

var text = $('.news').contents().filter(function() {
  return this.nodeType == 3;
}).text();

snippet.log(text)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!-- Provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>
<div class="news">
  i need this content

  <figure class="summary">
    i dont need this content
  </figure>

</div>


0
你应该试试这个:
var element = $(".news");
element = element.children().remove();
var text = element.html();

首先将父元素存储在一个变量中:

var element = $(".news");

移除父元素中的子元素:

element = element.children().remove();

现在从父级读取:

var text = element.html();

-1
<div class="news"> 
    <span class="content">i need this content</span>

   <figure class="summary">
     i dont need this content
    </figure>

 </div>

然后:

$(".content").text();

但是那里没有<span>类。HTML不是我的,我是从网上获取的。 - Must.Tek

-1
HTMLDivElement HDEMI =(HTMLDivElement)myHTMLDocument.getElementByName("news");
Out_OutputMemberID = Convert.ToString(
                      ((mshtml.IHTMLDOMNode)(HDEMI.firstChild).nodevalue);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接