この質問に対する答えを必死に探していましたが、何も見つかりませんでした。現在、作成中の Web サイトのコードを改善し、,,custom'' 属性から HTML5 data-yyy 属性に切り替えています。今、私の問題です。
$("#test ul li").click(function(event){
$(this).toggleClass("selected");
if($(this).hasClass("selected")){
if(jQuery.trim($("#input_value").val())){
$(this).data("special",{"value":jQuery.trim($("#input_value").val())});
}
}
else{
$(this).removeAttr("data-special");
}
});
次のコードは、特定の li 要素がクリックされたときに発生します。クラスが切り替えられ、切り替えた後 (それは言葉ですか?)、スクリプトはこの要素に切り替えられたクラスがあるかどうかをチェックします。クラスがない場合 (そこに問題があります)、スクリプトは属性 "data-special" を削除し、データを削除する必要があります。これはまったく起こりません!
追加する場合
$("#test ul li").removeAttr("data-special");
関数の外では、すべて問題なく、期待どおりに機能します。何か案は?