Javascript 替换元素标记并反向转义html实体
我无法控制字符串源代码,我只能执行Javascript 替换元素标记并反向转义html实体,javascript,jquery,html,Javascript,Jquery,Html,我无法控制字符串源代码,我只能执行html(),但我需要清理源代码中的混乱 我想删除所有,但保留其内容,因为内容还包含html标记,这些标记可能无法完全完成,就像在.pageWrap上迭代一样,生成一个临时元素,将html内容作为文本内容,最后在.page中获取html内容并加入它们 var str='div class=“page”&;书信电报;div class=“nodejs-c/divdiv class=“page”lass”&;燃气轮机;法国东部/divdiv class
html()
,但我需要清理源代码中的混乱
我想删除所有
,但保留其内容,因为内容还包含html标记,这些标记可能无法完全完成,就像在.pageWrap
上迭代一样,生成一个临时元素,将html内容作为文本内容,最后在.page
中获取html内容并加入它们
var str='div class=“page”&;书信电报;div class=“nodejs-c/divdiv class=“page”lass”&;燃气轮机;法国东部/divdiv class=“page”déemployer ses porte/divdiv class=“page”-avions Charles de G/divdiv class=“page”aulle pour soutenir/divdiv class=“page”les opérations contract/divdivdiv class=“page”e létat ailamique(/divdivdiv class=“page”IS)en Syrie et en/divdivdiv class=“page”Irak La préresidence f/div class=“page”rançaise a déclaréa/divdiv class=“page”联合政府/divdiv class=“page”内阁;lt//div class=“page”div&;燃气轮机/div';
$('body').html(
美元(str)
//获取所有换页元素
.find(“.pageWrap”)
//迭代元素
.map(函数(){
//使用
//当前元素的文本内容作为其html
返回$(''){
html:$(this.text())
})
//从临时元素中获取页面元素
.find(“.page”)
//从页面获取html内容
.html();
//而不是创建一个临时元素
//也可以通过
//解析内容
//返回$.parseHTML($(this).text())[0].innerHTML
})
//以数组形式获取结果
.get()
//加入他们
.加入(“”)
);代码>
var list=document.getElementsByTagName(“div”);
对于(i=0;iHi,请为您的JSB提供一个工作链接在此共享您的代码请提供预期的输出。请查看:@Yaje只需单击run.nodejs-class?嗯,我想显示的内容,而不是真正的div。您好,我必须保留页面包装,我使用它进行分页。缺少主包装。我尝试了>$(wrappedContent).wrapAll(“”)
但它不起作用,为什么?你只是个天才,我知道你可以用jquery做很多事情
<div class="nodejs-class">La France està déployer ses porte-avions Charles de Gaulle pour soutenir les opérations contre l'État islamique ( IS) en Syrie et en Irak la présidence française a déclaré après une réunion du cabinet de défense</div>
var list = document.getElementsByTagName("div");
for(i=0;i<list.length;i++){
var div = list[i];
if(div.class == "page"){
div.outerHTML = (div.outerHTML).replace('<div class="page">',"");
// Just do this again with '</div>' if you are sure there isnt a div inside of this one, else use this hard way
var diva = (div.outerHTML).split("</div>");
diva.pop(); // Remove the last </div> of the element
div.outerHTML = diva.join("</div>"); // Give back the removed DIV endings that arent the one you are replacing
}
}