如何用另一个标记替换字符串HTML标记
How do you replace an string HTML tag with another tag?
如何用P
标记替换字符串HTML非白名单标记?
白名单示例为p
br
标签
之前的字符串
<p>hello</p>
<div class="test">hello world <br>
<div>First LI</div>
<div>Second LI <a href="">link</a></div>
</div>
<div class="fw">
<p>shareeditflag <span>test</span></p>
</div>
<table>
<tbody>
</tbody>
</table>
字符串预期
<p>hello</p>
<p class="test">hello world <br>
<p>First LI</p>
<p>Second LI <a href="">link</a></p>
</p>
<p class="fw">
<p>shareeditflag <p>test</p></p>
</p>
<p>
<p>
</p>
</p>
在jquery方式中,这是不可能的,因为当深层节点出现问题时,它需要循环,直到没有非白名单?
$('*:not(p,br)').replaceWith($('<p>' + this.innerHTML + '</p>'));
按照这里概述的策略,您可以创建一个新的<p>
元素,用旧<div>
的内容填充它,插入新元素,然后删除原始元素:
var test = document.getElementsByClassName("test")[0];
var fw = document.getElementsByClassName("fw")[0];
var ptest = document.createElement("p");
ptest.innerHTML = test.cloneNode(true).innerHTML;
parent = test.parentNode;
parent.insertBefore(ptest, test);
parent.removeChild(test);
var pfw = document.createElement("p");
pfw.innerHTML = fw.cloneNode(true).innerHTML;
parent = fw.parentNode;
parent.insertBefore(pfw, fw);
parent.removeChild(fw);
然而,您必须首先解决HTML的问题,因为这些方法都不能指望在格式错误的HTML中发挥作用。在这种情况下,将<li>
放在列表中,并将<table>
内容放在<tbody>
(或表的行和列)中。例如:
<p>hello</p>
<div class="test">
hello world
<br>
<ul>
<li>First LI</li>
<li>Second LI <a href="">link</a></li>
</ul>
</div>
<table id="fw" class="fw">
<tr>
<td>
<p>shareeditflag</p>
</td>
</tr>
</table>
相关文章:
- 如何使用JQuery在Javascript中转换字符串中的HTML元素
- 如何使用JQuery在HTML中创建包含字符串参数的引号的onclickjavascript链接
- 如何使用gump任务将html转换为javascript字符串
- 将html元素插入到文本字符串中,以匹配另一个html字符串
- HTML字符串作为上下文
- 字符串中的
标记未正确在 HTML 中创建新行 - 将HTML(支持文件)中的令牌(字符串、数字等)传递给LogiXML
- 如何使用javascript选择字符串的部分,添加html标记或删除部分
- Visual Studio 2015 扩展将 JavaScript 文件中的字符串 HTML 视为 HTML 编辑
- 如何使用jquery插入多行字符串html
- 创建一个通过页面的查询字符串HTML表单
- PayPal确认,然后返回一个字符串HTML(js或任何其他..)
- 使用Javascript DOMParser将单字符串HTML格式化为多行选项卡HTML
- 如何转义字符串(HTML)中的多个层次引号
- 解析笑脸与文本字符串html和保持笑脸在显示顺序
- Regex帮助,JS尝试将字符串(html)转换为数字
- removeAttr在字符串html
- jqgrid asp.net-Javascript字符串HTML合成
- 如何用另一个标记替换字符串HTML标记
- 将变量追加到字符串html中