繁体   English   中英

复选框像单选按钮一样工作,但如何取消选中?

[英]Checkboxes working like radio button, but how to uncheck?

<div id="checkboxes">
    <label><input type="checkbox" name="box1" value="orange" class="btn"> Oranges</label>
    <label><input type="checkbox" name="box2" value="apple" class="btn"> Apples</label>
</div>
<script type="text/javascript">
jQuery(function()
{
    jQuery(document).on("change", ".btn", function()
    {
        jQuery(".btn").prop("checked", false);

        if (! this.checked)
            jQuery(this).prop("checked", true);
    });
});
</script>

这非常适合使复选框表现得像单选按钮,但“取消选中”不起作用。 如何让用户也可以取消选中?

默认情况下,您会获得该行为。 在这种情况下,JS 需要做的就是取消选中每个.btn元素,除了引发事件的元素:

 jQuery($ => { $(document).on("change", ".btn", function() { $(".btn").not(this).prop("checked", false); }); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div id="checkboxes"> <label><input type="checkbox" name="box1" value="orange" class="btn"> Oranges</label> <label><input type="checkbox" name="box2" value="apple" class="btn"> Apples</label> </div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM