.html()【要素内容 取得・設定 (HTMLコンテンツ)】
メモ
- 要素内容のHTMLコンテンツ 取得
- 該当の先頭要素が対象
- ブラウザの innerHTML プロパティ使用
ブラウザによっては、正確に取得不可 (例:IE で属性値が英数字のみの場合、時々クォーテーション省略)
- 要素内容のHTMLコンテンツ 設定
- 該当の全要素が対象
- コンテンツを全置換 (元のデータ・イベントハンドラ等を削除)
- ブラウザの innerHTML プロパティ使用
ブラウザによっては、正確な置換不可
(例:IE8 より前のバージョンでリンクのhref属性を絶対URLに変換、IE9 より前のバージョンで互換性レイヤを使用しないとHTML5要素が不正に処理) - IE9 以降で削除される子のテキストノードが破損する可能性有り
(.html(string)
の代わりに.empty().html( string )
を使用)
- 要素内容のHTMLコンテンツ 取得・設定 (共通)
- XML ドキュメントは、利用不可
- タグが不要な場合、.text()【要素内容 取得・設定 (テキスト)】
- 実行コードが含まれる可能性があるので、クロスサイトスクリプティング (XSS) の脆弱性に注意
構文
説明 | 構文 | 戻り値 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
HTMLコンテンツ 取得 | .html() 1.0 | String | |||||||||||
HTMLコンテンツ 置換 | .html( htmlString ) 1.0 htmlString htmlString:置換するHTMLコンテンツ文字列 | jQuery | |||||||||||
.html( function ) 1.4 function( [ index [, oldhtml ] ] )
| jQuery |
関連
例
<style>
.border { border:1px black solid; padding:1px 5px; }
.color1 { color:red; }
.bold { font-weight:bold; }
</style>
<div id="id1">
<p id="id10" class="border"><span class="color1">コンテンツ</span></p>
<p>.html() <span id="id11" class="border"></span> <span id="id12" class="border"></span></p>
<p>.text() <span id="id13" class="border"></span> <span id="id14" class="border"></span></p>
<p><span class="border class1">コンテンツ</span> <span class="border class1">コンテンツ</span></p>
</div>
<script>
var html = $( "#id10" ).html();
$( "#id11" ).html(html);
$( "#id12" ).text(html);
var text = $( "#id10" ).text();
$( "#id13" ).html(text);
$( "#id14" ).text(text);
$( "#id1 .class1" ).html(function(index, oldhtml) {
var html = "<span class='bold'>[" + index + "] " + oldhtml + "</span>";
return html;
});
</script>
コンテンツ
.html()
.text()
コンテンツ コンテンツ