Pretty-checkboxes-plugin をいじっていて、問題があります。プラグインはここで見ることができますhttp://aaronweyenberg.com/90/pretty-checkboxes-with-jquery
ご覧のとおり、これは 2 つのリンクを使用して選択と選択解除を行います。1 つのリンクのみを使用し、クラスを変更して、次にクリックしたときに別の方法で機能するようにしたいと考えています。
それは十分に単純でなければなりません。私はそれをtoggleClassで動作させようとしています。
私は単純に toggleClass ステートメントを挿入したので、コードは次のようになります。
$(document).ready(function() {
/* see if anything is previously checked and reflect that in the view*/
$(".checklist input:checked").parent().addClass("selected");
/* handle the user selections */
$(".checklist .checkbox-select").click(
function(event) {
event.preventDefault();
$(this).parent().addClass("selected");
$(this).parent().find(":checkbox").attr("checked","checked");
$(this).toggleClass("checkbox-select checkbox-deselect");
}
);
$(".checklist .checkbox-deselect").click(
function(event) {
event.preventDefault();
$(this).parent().removeClass("selected");
$(this).parent().find(":checkbox").removeAttr("checked");
$(this).toggleClass("checkbox-select checkbox-deselect");
}
);
});
これはある程度機能します。クラスはうまく切り替えられますが、残りのコードは最初に実行されたときにのみ機能します。後続のすべてのクリックは、クラスとリンクを切り替えるだけで、他には何もありません。
これがなぜなのか誰にも分かりますか?