selection.html - 要素のHTMLを取得、変更する

投稿日: / 更新日:

d3.jsのselection.html()は、要素内のHTMLを取得、または変更するためのAPIです。JavaScriptのinnerHTMLプロパティがベースとなっています。

サンプルコード

<p>SYN<mark>C</mark>ER</p>
// p要素を取得
var selection = d3.select( "p" ) ;

// p要素のHTMLを取得
var htmlContent = selection.html() ;

// p要素に新しいHTMLを指定
selection.html( "value", "<mark>SYNCER</mark>" ) ;

デモ

構文

value || selection = selection.html( [ value || function ] )
引数
項目説明
value省略可。要素に新しくセットしたいHTMLを指定する。省略して引数をなしにした場合は、現在のHTMLを取得する。
function引数に指定する値を、関数にすることもできる。ここで指定した関数は、第1引数に要素に関連付けられたデータ、第2引数にインデックス番号をとる。また、thisで要素を参照できる。戻り値が値として設定される。
戻り値
項目説明
value引数を指定しなかった場合、対象要素内のHTMLが戻り値となる。
selection引数を指定してHTMLを変更した場合は、d3.selectionオブジェクトが戻り値となる。

ノート

引数なしなら取得
引数を指定しない場合はHTMLの取得。
引数ありなら変更
引数を指定した場合はHTMLの変更。
テキストだけの場合
要素内に存在するのがテキストだけの場合、また、変更する時に指定するのがテキストだけの場合は、代わりにtext()を使った方がパフォーマンスは格段に良い。