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();
参考サイト
関連記事
-
-
JavaScript / jQueryでブラウザのウィンドウがアクティブかどうかを判別する方法
ある動画サイトを閲覧していた際にウィンドウが非アクティブになると視聴中の動画が止 ...
-
-
jQuery Alert Dialogsで表示後に処理したい
最近携わったサイトの中でJavaScript内に「jAlert」とかいう記述があ ...
-
-
Ajaxで負荷軽減
業務中、専用のページでfile_get_contents的なものは あまり使わな ...
-
-
HTMLのカスタムデータ属性をjQueryで取得する際はキャッシュに注意する
ASPを使用したサイトでHTMLのカスタムデータ属性を取得し色々処理したかったん ...
-
-
jQueryのプラグイン(ColorPicker)でカラーコードを視覚的に選択させる方法
カラーコードを入力するフォームがあって、HTMLやCSSの知識がない方のために、 ...