私は何かをするための最良の方法を探しています。さまざまなカテゴリのリストがあります。リスト項目はすべてクリック可能です。ユーザーに 1 ~ 3 個のアイテムを選択してもらいたい。
彼が何かをクリックすると、選択したクラスが li に追加されます。同じアイテムをもう一度クリックすると、クラスが削除されます (ToggleClass() )。
選択したクラスを持つアイテムの数をカウントする条件で、その全体をラップします。ここに私が今どこにいるかのフィドルがあります:
私の問題は、3 つの項目を選択した場合、if ステートメントがそれをブロックしているため、「1 つを選択解除」できないことです。ここでの解決策は何ですか? (また、このコードは実際には最善の方法ではないと感じています)
コード (上記の Fidlle と同じ)
HTML
<ul>
<li class="chooseCategory16"><a onclick="test(16); return false;" href="#">test1</a></li>
...
</ul>
JS
function test(number) {
if ( $("li.selected").length <= 2) {
if( $("li.chooseCategory"+ number +"").hasClass("selected")) {
$("li.chooseCategory"+ number +"").removeClass("selected");
} else {
$("li.chooseCategory"+ number +"").addClass("selected");
}
}
}
</p>