HTMLのカスタムデータ属性をjQueryで取得する際はキャッシュに注意する
ASPを使用したサイトでHTMLのカスタムデータ属性を取得し色々処理したかったんだけど、うまく取得できないケースに遭遇した。当該のカスタムデータの値はASP側で制御しているため、外部からは取得できないのかと思ったが色々調べるとjQueryのキャッシュ仕様が原因っぽい。以下に対応方法をメモ。
原因
jQueryのキャッシュの仕様により正常に取得できていない模様。
https://qiita.com/Kta-M/items/2eda39750abd10df9801
https://w3g.jp/blog/jquery-data-attr-cache
対応方法
jQueryだとattr()を使う。もしくはバニラJSで書くのが良さそう。
関連記事
-
-
ライブラリ等を使用せずファイルをドラッグ&ドロップでアップロードする方法
formにドラッグ&ドロップでファイルをアップロードする機能を実装する場 ...
-
-
「display: block !important;」指定された要素をjQueryで非表示にする方法
jQueryで特定の要素を非表示にしたかったのでhide()を使用したところ非表 ...
-
-
jQselectableでセレクトボックスをリッチにする
入力フォームみたいなもので元々はテキストボックス内に 都道府県を入れてもらうとい ...
-
-
jQueryにて特定のIDが存在するかチェックし分岐処理する方法
jQueryにて特定のIDが存在するかチェックし分岐処理したいというケースがあっ ...
-
-
jQueryでimgタグのsrcを変える
やりたかった事はイベントに応じてimgタグの src内のURLを変更。attrを ...