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で書くのが良さそう。
関連記事
-
-
「display: block !important;」指定された要素をjQueryで非表示にする方法
jQueryで特定の要素を非表示にしたかったのでhide()を使用したところ非表 ...
-
-
jQueryにてボタンをクリックするとAjax通信し結果をテキストボックスに反映する方法
jQueryを利用しページ内の特定のボタンをクリックすると、指定のページにAja ...
-
-
jQueryでimgタグのsrcを変える
やりたかった事はイベントに応じてimgタグの src内のURLを変更。attrを ...
-
-
簡単にtable内をソート
やりたかった事は、 ・テーブル内でのソート ・内容は文字、数値、日時 ・PHPじ ...
-
-
jQuery UI Datepickerで日本の祝祭日を表示
やりたかった事は、jQueryのカレンダーピッカーで 日本の祝祭日の色を変えると ...