jQuery如何选中两个复选框并取消之前已选中的复选框。

3

我有一个包含两组复选框的表单。第一组是委员会角色列表(主席、副主席、秘书等),第二组是担任这些角色的人员列表。例如,Todd 是我们的副主席,Gwen 是我们的财务主管。如果我想在点击副主席复选框时选择 Todd 的复选框,可以这样做:

$('input[name=toddS]').attr('checked', true);

但是如果我想选择我们的财务,我希望它不仅选中Gwen的复选框,还要取消Todd(和所有其他已选中的复选框)。我该如何做到这一点,以便无论人们勾选什么,它都只保留该角色中的一个或多个人,并将其余复选框取消选中。清楚吗?希望是这样。 Scott
2个回答

1
使用单选按钮,这样只有一个单选按钮会自动选中,其他的则会自动取消选中。甚至不需要使用jQuery,只需确保将单选按钮命名为相同的名称,但值不同即可,例如:
<input type="radio" name="position" value="Chairman" /> Chairman
<input type="radio" name="position" value="Vice Chairman" />Vice  Chairman
<input type="radio" name="position" value="Secretory" /> Secretory
<!-- and so on -->

同样地,对于人们的:

<input type="radio" name="person" value="Todd" /> Todd
<input type="radio" name="person" value="Gwen" />Vice  Gwen
<input type="radio" name="person" value="Micheal" /> Micheal
<!-- and so on -->

1
有些职位有两个人,所以我需要使用复选框。如何进行复选框的选择和取消选择? - Scott Hummel

0

如果名字列表长这样

<input type="checkbox" name="person" value="Todd" />Todd
<input type="checkbox" name="person" value="Gwen" />Gwen
<input type="checkbox" name="person" value="Micheal" />Micheal

您可以使用以下JS代码来清除所有选择:
$('input[name=person]').attr('checked', false);

可能有点晚了,但这个答案也许可以帮到其他人...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接