【问题标题】:Converting html text into plain text将html文本转换为纯文本
【发布时间】:2014-09-08 12:55:44
【问题描述】:

我有以下 HTML:

<div id = "id1">
    "some text 1"<br>
    "more text 2" <br>
    "name" <br>
    <li> "list 1"</li>
    "THEend"
    <div class="class1" style="margin: 0px; padding: 0px;">
      &nbsp;&nbsp;
    </div>
</div>

还有以下 JavaScript:

var contents  = document.getElementsById("id1").innerHTML

目前,contents 的结果包括来自id1class1 的文本——但我想完全消除class1 的内容。

我应该如何进行?

【问题讨论】:

  • 你的问题是?
  • 什么是“数据”——你是说标签吗?
  • 内容结果 = 一些文本1
    更多文本
    名称
    列表 1结束
  • 你的帖子没有用“jQuery”标记——但你可以看看它的text方法:api.jquery.com/text
  • 由于您的 HTML 无效,因此很难提出合适的解决方案。如果您不想获取 HTML,请使用 innerTexttextContent 而不是 innerHTML。等等,在您的评论中您说您确实想要获取 HTML?我现在很困惑。

标签: javascript html


【解决方案1】:

这是一个真的原始示例:

var original_id1 = document.getElementById('id1'),
    cloned_id1 = original_id1.cloneNode(true); // deep clone

// find all ".class1" elements
var class1_elements = cloned_id1.getElementsByClassName('class1');
// remove .class1 elements from clone
for (var i = 0; i < class1_elements.length; i++){
  var c1 = class1_elements[i], p = c1.parentNode
  p.removeChild(c1);
}

// remaining HTML
alert(cloned_id1.innerHTML);

// remaining text content(s)
alert(cloned_id1.textContent);

exmaple

【讨论】:

    猜你喜欢
    • 2012-04-12
    • 1970-01-01
    • 1970-01-01
    • 2014-04-21
    • 1970-01-01
    • 2018-03-17
    • 1970-01-01
    • 2011-07-05
    • 1970-01-01
    相关资源
    最近更新 更多