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で書くのが良さそう。
関連記事
-
-
tableタグでスクロール時にヘッダーを残して表示する方法(jquery-decapitate)
テーブルタグ内で縦にスクロールした際にテーブルヘッダー部分は表示させたままテーブ ...
-
-
jQueryにて複数のajax処理のレスポンスをまとめて表示する方法
同時にajax処理を行う際、挙動やコードの書き方に悩まされることが多い。例えばA ...
-
-
jquery.snipeの使い方
使い方によっては面白くなりそう。 ■jquery.snipe http://ra ...
-
-
セレクトメニューにサジェスト機能をつける方法(select2)
formのselectメニューで何文字が入力すると候補を絞って表示させるサジェス ...
-
-
jQueryでshow/hideよりaddClass/removeClassの方が速い
diaplay:none/blockする際に最近はshow()/hide()を ...