use*_*581 4 javascript c# asp.net
如何<b></b>用<strong></strong>标签替换标签到特定的div?
例如:
<div id="aaa">hello<b>wow</b>!</div>
Run Code Online (Sandbox Code Playgroud)
使用javascript替换
<div id="aaa">hello<strong>wow</strong>!</div>
Run Code Online (Sandbox Code Playgroud)
请帮忙!提前致谢.

*****为什么我要尝试将输出HTML代码更改<b></b>为<strong></strong>,以获得W3C验证.我能这样做吗?**
或者是否有任何解决方案可以使用ASP.NET + C#来做到这一点?
干得好:
var root, elems;
root = document.getElementById( 'test' );
elems = root.getElementsByTagName( 'b' );
toArray( elems ).forEach( function ( elem ) {
var newElem = document.createElement( 'strong' );
newElem.textContent = elem.textContent;
elem.parentNode.replaceChild( newElem, elem );
});
Run Code Online (Sandbox Code Playgroud)
toArray你最喜欢的数组到数组转换器函数在哪里.我用这个:
function toArray( arrayLike ) { return [].slice.call( arrayLike ); }
Run Code Online (Sandbox Code Playgroud)
现场演示: http ://jsfiddle.net/mJSyH/3/
注意:此代码在IE8中不起作用.
您可以获取<b>某个元素下的所有元素,将所有子节点移动到一个新<strong>元素,然后将其替换<b>为<strong>.
<div id="aaa">hello<b>wow</b><b>2</b><b>3</b>!</div>
<script>
var container = document.getElementById("aaa")
var find = container.getElementsByTagName("b");
var bold, strong;
while (bold = find[0]) {
strong = document.createElement("strong");
while (bold.firstChild) {
strong.appendChild(bold.firstChild);
}
bold.parentNode.replaceChild(strong, bold);
}
</script>
Run Code Online (Sandbox Code Playgroud)
您bold = find[0]每次都可以设置的原因是,当<b>从文档中删除元素时,它们也会从文档中删除NodeList find.
请访问http://jsbin.com/eqikaj/13/edit查看最新版本.
| 归档时间: |
|
| 查看次数: |
1900 次 |
| 最近记录: |