如此simple jsfiddle所示,以下代碼輸出<p>I am inner content</p>
,但似乎丟棄了div標記。我錯過了什麼?爲什麼jQuery在解析html字符串時會丟棄div
var x = $('<div id="#testing"><p>I am inner content</p></div>');
alert(x.html());
如此simple jsfiddle所示,以下代碼輸出<p>I am inner content</p>
,但似乎丟棄了div標記。我錯過了什麼?爲什麼jQuery在解析html字符串時會丟棄div
var x = $('<div id="#testing"><p>I am inner content</p></div>');
alert(x.html());
由於.html()回報x
的innerHTML。
獲取匹配的 元素集合中第一個元素的HTML內容或設置每個匹配元素的HTML內容。
妍EED得到outerHTML
var log = (function() {
var $log = $('#log');
return function(msg) {
$('<p/>', {
text: msg
}).prependTo($log)
}
})();
var x = $('<div id="#testing"><p>I am inner content</p></div>');
log(x.prop('outerHTML'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="log"></div>
噢,好的!如果你有時間的話,小的後續問題...爲什麼我必須使用'.prop'來獲取外部HTML? jquery是否有理由鼓勵程序員使用innerHTML?我甚至沒有看到一個官方的功能。外部鏈接 – Hamy 2014-09-29 05:43:51
PS - 我會接受這一次stackoverflow允許我。我已經超時使用太多:-P – Hamy 2014-09-29 05:44:15
@Hamy沒有獲取外部html的jQuery實用程序方法,它是一個dom屬性([Element.outerHTML](https://developer.mozilla.org/en- US/docs/Web/API/Element.outerHTML))... [.prop()](http://api.jquery.com/prop/)用於讀取dom元素屬性 – 2014-09-29 05:46:17
試試這個fiddle
var x = $('<div id="#testing"><p>I am inner content</p></div>');
alert(x.prop('outerHTML'));
outerHTML類似的innerHTML,它是 包含的元素屬性打開g關閉標籤以及內容。
[獲取選定元素的外部HTML]的可能重複(http://stackoverflow.com/questions/2419749/get-selected-elements-outer-html) – 2014-09-29 05:42:02