我会建议使用类,而不是类型的
。
<div class="selector">
<input type=checkbox class="serialcheck" name="hello" value="test"/> Hello
<input type=checkbox class="serialcheck" name="bye" value="test"/> Bye
<input type=checkbox class="serialcheck" name="no" value="test2"/> No
<input type=checkbox class="serialcheck" name="no no" value="test2"/> No No
</div>
真的,你只需要选择所有,但当前射击它的人的onclick事件:
$(".selector input.serialcheck").click(function(){
var test = $(this).val();
$(".selector input.serialcheck[value!="+test+"]").attr('checked', false);
});
如果要选择所有具有相同值的那些的,增加一个行:
$(".selector input.serialcheck").click(function(){
var test = $(this).val();
$(".selector input.serialcheck[value!="+test+"]").attr('checked', false);
$(".selector input.serialcheck[value="+test+"]").attr('checked', true);
});
为什么不使用单选按钮?这就是他们的目的。如果只能选择一个组中的一个项目,并且复选框不止一个,请使用单选按钮。这里是你更新的小提琴:http://www.jsfiddle.net/Rph8z/2/(他们必须有相同的名字)。 – 2011-02-01 13:49:41
必须有选择不选择任何东西,你不能取消选择单选按钮,除非你创建一个标记为“无”的新选项,但我不喜欢那个。 – WraithLux 2011-02-01 13:52:14
为什么不呢?如果我不得不在一个`none`值和基本上试图复制一些已经存在的涉及JavaScript的行为之间进行选择,并且在JS被禁用时不能工作,我会明确选择none。除此之外,如果有(预选)`none`选项,用户可能会更容易理解,但这取决于上下文。 – 2011-02-01 13:54:23