我想取消选中具有特定类的所有复选框,但刚才选中的复选框除外。
function PizzaToppings_OptionValueChanged(checkboxElement) {
if ($(checkboxElement).attr("checked")) {
if($(checkboxElement).hasClass('cheese_toppings'))
{
// This will uncheck all other "cheese_toppings" but I want the newly selected item "checkboxElement" to remain checked.
$('input:checkbox.cheese_toppings').attr('checked', false);
}
}
}
上面的代码将取消选中所有“ cheese_toppings”,包括刚刚选择的一个。我不想再次检查刚刚选择的那个,否则该事件将被召回。
我认为最好的解决方案是从
$('input:checkbox.cheese_toppings')
返回的列表中删除“ checkboxElement”,然后将.attr('checked', false)
设置为该列表。但是我不确定如何从列表中删除checkboxElement。 最佳答案
$('input:checkbox.cheese_toppings').not(checkboxElement).attr('checked', false);
请参阅jQuery文档:.not()