JQueryでテキストノードの値を置き換える
どうやらJQueryではノードテキストを直接編集できないらしいので、ノードテキストを一度削除してから新しいテキストを挿入することにしました。
JQueryで値を変更するには「.text(”)」でできと思いましたが、ノードテキストは消すことできませんでした。JQueryでtextNodeという変数にテキストノードのオブジェクトが取得済みとして、方法は以下です。
textNode.text(''); // これでは消せず。
「.nodeValue = ”」 なら消すことができました。
textNode.nodeValue = ”; // テキストノードを消せました。
新しいテキストは今消したテキストノードの「.after(‘追加したいテキスト’) 」で追加できました。
textNode.nodeValue.after('追加したいテキスト')
まとめると以下です。
textNode.nodeValue = ''; textNode.after('追加したいテキスト');