需要使用Javascript替换字符串(html内容)

时间:2014-12-19 11:09:34

标签: javascript string replace

在代码下面我需要替换一个html"整个div"通过"一些字符串"使用javascript。

这里用一些HTML内容替换字符串(要替换的整个div)和一些字符串

var replaceString = '<div style="page-break-after: always"><span style="display:none"> </span></div>';
var result = htmlContent.replace(replaceString, "SOMESTRING");
var contentArr = result.split('SOMESTRING');

replaceString未被替换,可能是因为双引号,冒号存在于该html div字符串中。 replaceString没有属性(ID,Class),但只有STYLE属性。

请帮我解决这个问题

我如何更换&#34;整个div&#34;用&#34;一些字符串&#34;使用javascript

先谢谢

2 个答案:

答案 0 :(得分:0)

只是一个想法,尝试将其包装在一个名为string的div中并更改其内部html。

<强> HTML

<div id="string">
   <div style="page-break-after: always">
       <span style="display:none"></span>
   </div>
</div>

<强> JAVASCRIPT

document.getElementById("string").innerHTML = "new string"

答案 1 :(得分:0)

我没弄清楚为什么你不能用“SOMETHING”代替它,因为我不知道htmlContent变量的含义。我的猜测是CKEditor生成的内容可能包含一些你没想到的空格。在这种情况下,您可能需要使用正则表达式,例如:

var replaceString = /<div\s*style="page-break-after:\s*always">\s*<span\s*style="display:none">\s*<\/span>\s*<\/div>/;
// \s* represents 0 or more white spaces

我在JSFiddle上做了一个例子。看看吧。

https://jsfiddle.net/itanaka/sdbnn76h/4/