jQueryにて$.parseHTML()を用いてHTML文字列をDOMノードに変換する方法
あるサイトのソースコードを拝見しているとjQueryで$.parseHTML()という見慣れない記述があった。内容的にはajaxで他ページのHTMLを取得して扱いやすい形に変換する際に$.parseHTML()を使っているように見受けられた。以下に具体的な利用方法をメモ。
利用方法
ソースコード
$(function(){
const html = `
<div class="parent">
parent
<div class="child">
child
</div>
</div>
`;
const parse_array = $.parseHTML(html);
const parse_obj = $($.parseHTML(html));
console.log(parse_array);
console.log(parse_obj);
});
出力例
上記ソースコードを実行した際、コンソールログには以下のような内容が出力される。
Array(3) [ #text, div.parent, #text ]
0: #text "\n\t\t\t"
1: <div class="parent">
2: #text "\n\t\t"
length: 3
Object { 0: #text, 1: div.parent, 2: #text, length: 3 }
0: #text "\n\t\t\t"
1: <div class="parent">
2: #text "\n\t\t"
length: 3
指定した要素を抽出したい場合
console.log(parse_obj.find(`.child`).text()); //child
リファレンス
jQuery.parseHTML()
関連記事
-
-
日付の範囲指定用プラグイン「DateRangePicker」の利用方法
日付型のデータを検索する際に開始・終了日のテキストボックスを用意し、それぞれにタ ...
-
-
フォームの入力・選択内容を自動保存してくれる「Garlicjs」プラグインの利用方法
お問い合わせページ等、フォームを設置したページで入力・選択した内容を保存したい。 ...
-
-
videoタグで表示させた動画をjQuery&CSSでフローティングビデオ対応させる方法
Web上の動画をFloatingVideo対応したいという要望を受けた。ページ上 ...
-
-
JavaScript / jQueryにてページ表示時に指定したテキストボックスにフォーカスさせる方法
ページを開いた際に指定したテキストボックス(input type="text") ...
-
-
JavaScript / jQueryでブラウザのウィンドウがアクティブかどうかを判別する方法
ある動画サイトを閲覧していた際にウィンドウが非アクティブになると視聴中の動画が止 ...