使用 jQuery 制作像收音机这样的复选框,我怎样才能取消选中?包括小提琴

发布于 2024-12-09 10:07:24 字数 538 浏览 0 评论 0原文

我使用此代码使复选框充当单选按钮的作用。我可以添加/更改什么,以便当单击复选框时它会取消选中?

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">

I'm using this code to make checkboxes act like radio buttons. What can I add/change so when a checked box is clicked on it'll uncheck?

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">

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

爺獨霸怡葒院 2024-12-16 10:07:24

如果你希望它像单选按钮一样 -

可以尝试 -

$(".radiounique").click(function() {
    var state = $(this).is(':checked');
    $(".radiounique").removeAttr('checked');
    $(this).attr('checked', state );
});

Fiddle - http://jsfiddle.net/4Awf9/1 /

If you want it to act like the radiobuttons -

can try -

$(".radiounique").click(function() {
    var state = $(this).is(':checked');
    $(".radiounique").removeAttr('checked');
    $(this).attr('checked', state );
});

Fiddle - http://jsfiddle.net/4Awf9/1/

静待花开 2024-12-16 10:07:24

这是一个常见的错误。单选按钮是单选按钮,复选框是复选框。不要通过更改复选框列表功能来模拟单选按钮列表来迷惑用户。这是非常糟糕的做法。

顺便说一句,如果您禁用 JavaScript,仍然可以选中多个复选框。

我知道这不是你想要的答案,但这是事实。

This is a common mistake. Radiobuttons are radiobuttons, checkboxes are checkboxes. Do not confuse your users by changing a checkbox list function to emulate a radiobutton list. That is very bad practice.

By the way, if you disable javascript it still will be possible to check multiple boxes.

I know this is not the answer you would like, but it's the truth.

明媚殇 2024-12-16 10:07:24
    $(".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);

});
    $(".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);

});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文