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で書くのが良さそう。
関連記事
-
-
jQueryで後から追加された要素にイベントを設定
jQueryで.html()等を使って追加した要素に対してイベントを設定したかっ ...
-
-
jQueryの「DateTimePicker」プラグインで日付や時間選択時に指定したイベントを実行させる方法
jQueryの「DateTimePicker」プラグインで日付や時間選択時、あら ...
-
-
amazon等のECサイトによくにあるアイテムの満足度を星マークで送信・表示する方法
amazon等のECサイトによくにあるアイテムの満足度を星マークかつ5段階で送信 ...
-
-
jQueryで要素を移動する方法のまとめ
jQueryで要素を移動する際、insertBefore / insertAft ...
-
-
jQueryでformの各種パーツ(テキストボックス等)の操作まとめ
jQueryでフォームのセレクトメニューやラジオボタン等、各種パーツを操作するこ ...