我们在用JS/JQ 获取或设置元素内容的时候,通常是获取或设置指定元素之间的内容
<script> //JS document.getElementById('test').innerHTML="设置元素内容"; //JQ $("#test").val("设置元素内容"); </script>
但是如果我们需要获取包含元素本身的内容的时候就会变得很麻烦,这时候用outerHTML便可以轻松解决问题了。
原HTML为:
<div id="test"><span>替换前</span></div>
1、innerHTML
运行脚本
<script type="text/javascript" lang="javascript"> //JS document.getElementById('test').innerHTML = "<div>替换后</div>"; //JQ $("#test").val("<div>替换后</div>"); //或者 $("#test").prop("innerHTML ","<div>替换后</div>"); </script>
原HTML变为:
<div id="test"><div>替换后</div></div>
2、innerText
运行脚本
<script type="text/javascript" lang="javascript"> //JS document.getElementById('test').innerText= "<div>替换后</div>"; //JQ $("#test").text("<div>替换后</div>"); //或者 $("#test").prop("innerText","<div>替换后</div>"); </script>
原HTML变为:
<div id="test">>div<替换后>/div<</div>
3、outerHTML
运行脚本
<script type="text/javascript" lang="javascript"> //JS document.getElementById('test').outerHTML = "<div>替换后</div>"; //JQ $("#test").prop("outerHTML","<div>替换后</div>"); </script>
原HTML变为:
<div>替换后</div>
4、outerText
运行脚本
<script type="text/javascript" lang="javascript"> //JS document.getElementById('test').outerText= "<div>替换后</div>"; //JQ $("#test").prop("outerText","<div>替换后</div>"); </script>
原HTML变为:
>div<替换后>/div<
innerHTML和outHTML都是会将HTML标签一起读取或设置,但innerText和outerText在读取的时候会去掉HTML标签,设置的时候如果字符中包含HTML标签,将会作为特殊字符做替换处理。