javascript - 用label标签写了个单选按钮,可以选中该按钮,但是不能取消选中,请问怎么写取消
迷茫
迷茫 2017-04-11 11:05:12
[JavaScript讨论组]

html代码:
<p class="checkout-select checkout-add-y">

            <a data-toggle="collapse" data-parent="#accordion" href="#collapsejifen">
            </a>

            <ul class="y-check-top-box" id="collapsejifen">
                <!--如果剩余积分大于0-->
                {if $pay_points>0}
                <li class="dis-box ts-1-11 y-checkout-box" id="li_1" style="position:relative; bottom:15px;"><span style="position:relative; top:20px;">使用积分:<span style="font-size:14px;">您当前的可用积分为[{$pay_points}]分</span></span>
                    <p class="box-flex" style="position:relative; top:15px;">
                        <label class="ts-1-8" for="points"><i></i></label>
                    </p>

                    <input type="radio" class="radio" name="points" id="points" checked="false" onclick="changePoints()" />
                    <input type="hidden" name="pay_points" id="pay_points" value="{$pay_points}">
                    <input type="hidden" name="curr_pay_points" id="curr_pay_points" value="0">
                </li>
                 <hr style="margin-top:5px;">
            </ul>
               {/if}
        </p>
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(4)
怪我咯

直接判断如果选中再次点击的话 this.checked = false;

写了一大部分

  <form action="">
    <input class="radio" name="age" type="radio" value="a"/>a<br>
    <input class="radio" name="age" type="radio" value="b"/>b<br>
    <input class="radio" name="age" type="radio" value="c"/>c
  </form>

  <script>
    var radio = document.querySelectorAll('.radio');

    radio.forEach(function(r) {
      var isChecked = false

      r.addEventListener('click', function () {
        if (this.checked === true && isChecked === false) {
          isChecked = true
        } else {
          this.checked = false
          isChecked = false
        }
      })
    })
  </script>

剩下的自己写吧,没什么问题

大家讲道理

一般来说单选按钮是成组出现的,name属性相同,当你选择另一个,当前这个会取消,切换到另外一个

如果就一个单选按钮,想通过点击取消,要在js里把checked属性干掉

如果想通过点击实现选中->取消->选中,设个标识位来控制checked属性

怪我咯

单选是不能取消的.请用checkbox

天蓬老师

单选按钮是不能取消的,只能用type='checkbox'这个属性

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号