我正在使用此代码使复选框像单选按钮一样。我可以添加/更改什么,以便在单击复选框时取消选中它?
http://jsfiddle.net/peter/4Awf9/
$(".radiounique").click(function() {
$(".radiounique").removeAttr('checked');
$(this).attr('checked', true);
});
<input type="checkbox" class="radiounique" value="3">
<input type="checkbox" class="radiounique" value="4">
<input type="checkbox" class="radiounique" value="2">
<input type="checkbox" class="radiounique" value="1">
答案 0 :(得分:3)
如果你想让它像无线电按钮一样 -
可以尝试 -
$(".radiounique").click(function() {
var state = $(this).is(':checked');
$(".radiounique").removeAttr('checked');
$(this).attr('checked', state );
});
答案 1 :(得分:1)
这是一个常见的错误。 Radiobuttons是radiobuttons,复选框是复选框。不要通过更改复选框列表功能来模拟radiobutton列表来混淆用户。这是非常糟糕的做法。
顺便说一下,如果你禁用了javascript,它仍然可以检查多个框。
我知道这不是你想要的答案,但这是事实。
答案 2 :(得分:0)
$(".radiounique").click(function() {
var clicked = $(this);
$(".radiounique").each(function(){
if($(clicked[0]).attr('value') != $(this).attr('value'))
$(this).attr('checked', false);
})
if($(this).attr('checked') == 'checked')
$(this).attr('checked', true);
});