操纵javascript变量[HTML]以仅显示文本

时间:2015-04-07 11:32:23

标签: javascript

这是我的代码。

var Text = "First:<div>Second<span> Text</span></div><p>Third <span>Text</span></p><div>Forth.</div>";

我需要操纵变量并只显示文本。

输出应该是这样的:

First :
Second Text
Third Text
Forth 

只有在找到块元素时才会留下一行。由于我是javascript的新手,我只能在html位于DOM中时执行此操作。我需要在javascript变量中动态执行此操作。

编辑:1

您建议的答案正在发挥作用。但它不适合这个变量。

var text = '<p class="MsoListParagraph" style="margin-left:.25in;text-align:justify;
text-indent:-.25in;mso-list:l1 level1 lfo2"><!--[if !supportLists]--><span style="font-size: 10pt;">3.<span style="font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><!--[endif]--><span lang="EN-IN" style="font-size: 10pt;">Text&nbsp;<b>Text</b>&nbsp;Text.</span><span style="font-size: 10pt;"><o:p></o:p></span></p>';

在控制台

中显示“Uncaught SyntaxError:Unexpected token ILLEGAL”

请给我一些解决方案。

3 个答案:

答案 0 :(得分:1)

我希望我的尝试能解决你的问题。 这是链接

JSFiddle

 var Text = "First:<div>Second<span> Text</span></div><p>Third <span>Text</span></p><div>Forth.</div>";
document.getElementsByTagName('p')[0].innerHTML=Text;

编辑:这是代码中的双引号问题。

JSfiddle2

答案 1 :(得分:1)

使用innerHTML将该字符串注入dom应该可以为您提供所需的输出,因为文本将转换为html元素。 (innterText不会给你的东西)。

here's a jsfiddle to demo

var Text = "First:<div>Second<span> ETC . . .";

document.getElementById('something').innerHTML = Text;

答案 2 :(得分:0)

将它作为innerHTML放在某个元素中(如果我理解你所做的事情):

function writeText(){
  document.getElementById("ph").innerHTML = "First:<div>Second<span> Text</span></div><p>Third <span>Text</span></p><div>Forth.</div>";
}
<html>
  <body>
    <button onclick="writeText()" >write it</button>
    <div id="ph"></div>
   </body>
</html>