首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我可以取消单选按钮吗?

我可以取消单选按钮吗?
EN

Stack Overflow用户
提问于 2020-07-24 06:11:20
回答 3查看 87关注 0票数 0

我想问你。单选按钮不应该不被选中,但我想让它不被选中。

我已经按照下面的方式编写了代码,但是它仍然不起作用。我的密码怎么了?请举一个我所做的代码的例子。

无线按钮码

代码语言:javascript
复制
<input type="radio" id="sidebar_workout_1" value="Hiit_1" name="workout">
<input type="radio" id="sidebar_workout_2" value="Yoga/Flexibility_2" name="workout">

当我单击Hiit选项时,代码将如下所示

代码语言:javascript
复制
<input type="radio" id="sidebar_workout_1" value="Hiit_1" name="workout" previousvalue="checked">
<input type="radio" id="sidebar_workout_2" value="Yoga/Flexibility_2" name="workout" previousvalue="false">

当我取消选中Hiit选项时,代码将如下所示,并且没有丢失检查

代码语言:javascript
复制
<input type="radio" id="sidebar_workout_1" value="Hiit_1" name="workout" previousvalue="false">
<input type="radio" id="sidebar_workout_2" value="Yoga/Flexibility_2" name="workout" previousvalue="false">

我的Jquery

代码语言:javascript
复制
$("input[type='radio']").click(function() {
        var previousValue = $(this).attr('previousValue');
        var name = $(this).attr('name');

        if (previousValue == 'checked') {
            $(this).removeAttr('checked');
            $(this).attr('previousValue', false);
        } else {
            $("input[name=" + name + "]:radio").attr('previousValue', false);
            $(this).attr('previousValue', 'checked');
        }
    });
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-07-24 06:15:52

您需要将$(this).removeAttr('checked');更改为$(this).prop('checked', false);

票数 2
EN

Stack Overflow用户

发布于 2020-07-24 06:26:32

代码语言:javascript
复制
  Please try to this code


  $("input[type='radio']").click(function() {
            var previousValue = $(this).attr('previousValue');
            var name = $(this).attr('name');
            if (previousValue == 'checked') {
                $(this).prop('checked', false);
                $(this).attr('previousValue', false);
            } else {
                $("input[name=" + name + "]:radio").attr('previousValue', false);
                $(this).attr('previousValue', 'checked');
            }
        });
票数 1
EN

Stack Overflow用户

发布于 2020-07-24 06:36:03

如果有人试图取消选中单选按钮,但使用普通js,您可以通过将radio.checked设置为false来实现这一点。

下面是一个例子:

代码语言:javascript
复制
<div>
    <input type="radio" name="gender" id="male" value="male">
    <label for="male">Male</label>
</div>

<div>
    <input type="radio" name="gender" id="female" value="female">
    <label for="female">Female</label>
</div>

<button id="btnUncheck">Uncheck</button>

香草js:

代码语言:javascript
复制
document.querySelector('#btnUncheck')
    .addEventListener('click', e => {
        const radios = document.querySelectorAll('[type="radio"]')
        
        radios.forEach(radio => {
            radio.checked = false
        })
    })
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63067827

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档