設置內容 - text()、html() 以及 val()
三個相同的方法來設置內容:
- text() - 設置或返回所選元素的文本內容
- html() - 設置或返回所選元素的內容(包括 HTML 標記)
- val() - 設置或返回表單字段的值
下面的例子演示如何通過 text()、html() 以及 val() 方法來設置內容:
text()、html() 以及 val() 的回調函數
上面的三個 jQuery 方法:text()、html() 以及 val(),同樣擁有回調函數。回調函數有兩個參數:被選元素列表中當前元素的下標,以及原始(舊的)值。然後以函數新值返回您希望使用的字符串。
下面的例子演示帶有回調函數的 text() 和 html():
JS中innerHTML和innerTEXT的用法
<div id="test">
<span style="color:red">test1</span> test2
</div>
在JS中可以使用:
test.innerHTML:
也就是從對象的起始位置到終止位置的全部內容,包括Html標籤。
上例中的test.innerHTML的值也就是“<span style="color:red">test1</span> test2 ”。
test.innerText:
從起始位置到終止位置的內容, 但它去除Html標籤
上例中的text.innerTest的值也就是“test1 test2”, 其中span標籤去除了。
test.outerHTML:
除了包含innerHTML的全部內容外, 還包含對象標籤本身。
上例中的text.outerHTML的值也就是<div id="test"><span style="color:red">test1</span> test2</div>
完整示例:
<div id="test">
<span style="color:red">test1</span> test2
</div>
<a href="javascript:alert(test.innerHTML)">innerHTML內容</a>
<a href="javascript:alert(test.innerText)">inerHTML內容</a>
<a href="javascript:alert(test.outerHTML)">outerHTML內容</a>
特別說明:
innerHTML是符合W3C標準的屬性,而innerText只適用於IE瀏覽器,因此,儘可能地去使用innerHTML,而少用innerText,如果要輸出不含HTML標籤的內容,可以使用innerHTML取得包含HTML標籤的內容後,再用正則表達式去除HTML標籤,下面是一個簡單的符合W3C標準的示例:
<a href="javascript:alert(document.getElementById('test').innerHTML.replace(/<.+?>/gim,''))">無HTML,符合W3C標準</a>