jQueryで特定のdata属性をセレクタとして指定する方法
jQueryで特定のdata属性をクリックした際に何らかのイベントを実行したかった。いつもであれば当該要素のに対してidやclassを付与し、それらをセレクタとして指定するがASPを利用したサイトでそのような方法が取れなかった。そのため今回はdata属性自体をセレクタとして指定したい。以下に対応方法をメモ。
対応方法
ソースコード
<div data-id="1">ID:1</div> <div data-id="2">ID:2</div> <div data-id="3">ID:3</div> <script type="text/javascript" src="https://code.jquery.com/jquery-3.7.1.min.js"></script> <script> $(function(){ $(`[data-id]`).on(`click`, function(){ console.log($(this).data(`id`)); }); }); </script>
data-id属性をクリックした際にdata-idの値をコンソールログに出力するという内容になる。
尚、data-id属性の内容が1のものを指定したいような場合は以下のような形になる。
$(`[data-id="1"]`).hide();
参考サイト
関連記事
-
-
要素の表示or非表示
今まで要素の表示or非表示をCSSで操作する際、 display:none; / ...
-
-
jQueryでformの各種パーツ(テキストボックス等)の操作まとめ
jQueryでフォームのセレクトメニューやラジオボタン等、各種パーツを操作するこ ...
-
-
jQueryでユーザーが編集可能な文字列をページ上に表示する際にエスケープする方法
GETパラメータを取得し、その内容をページ上に表示したいケースがあった。また、A ...
-
-
jQueryで画像が存在すれば表示、なければノーイメージ画像を表示
やりたかった事は以下の通り。 ・画像のURLはcode.jpgみたいになってる ...
-
-
JavaScript / jQueryでブラウザのウィンドウがアクティブかどうかを判別する方法
ある動画サイトを閲覧していた際にウィンドウが非アクティブになると視聴中の動画が止 ...