【问题标题】:how to select only one check box with JQuery如何使用 JQuery 只选择一个复选框
【发布时间】:2014-05-28 08:17:02
【问题描述】:
<div class="form-group">
@Html.CheckBoxFor(x => x.ClientAccountIsHospitality, new { @type = "checkbox" })
@Html.LabelFor(x => x.ClientAccountIsHospitality)
</div>
<div class="form-group">
@Html.CheckBoxFor(x => x.ClientAccountIsRetail, new { @type = "checkbox" })
@Html.LabelFor(x => x.ClientAccountIsRetail)
</div>

<script type="text/javascript" language="javascript">
         $(document).ready(function () {
            $("input[type='checkbox']").change(function () {
                $(this).closest(".checkboxContainer").find("input[type='checkbox']").not(this).prop("checked", false);
                $(this).prop("checked", true);
            });
        });
        </script>

我希望当用户选择一个复选框时,如果另一个复选框被选中,它将取消选择。 此代码的问题是用户可以选择一个复选框,但不能再次取消选择它。通过选择另一个复选框或尝试取消选中选定的框

注意我在整个网站中都使用了复选框,并希望坚持这一点。我不想要一个单选按钮。谢谢

【问题讨论】:

    标签: c# jquery html asp.net checkbox


    【解决方案1】:
    $(':checkbox').click(function(e){
        if($(this).is(':checked')){
            $(':checked').prop('checked', false);
            $(this).prop('checked', true);
    
        }
        else{
            e.preventDefault();
        }
    });
    

    example

    【讨论】:

    • 非常感谢您的帮助,但我仍然无法取消选中某个框,在选中它之后。只取消检查我是否选择了另一个框?
    • 对不起,然后尝试删除 e.preventDefault();
    • 啊,太好了,谢谢...我现在唯一的问题是页面上有另一个复选框,但我不希望它适用于此。有什么想法吗?
    • @Html.CheckBoxFor(x => x.ClientAccountIsActive)@Html.LabelFor(x => x.ClientAccountIsActive)
    猜你喜欢
    • 1970-01-01
    • 2017-08-10
    • 2013-10-21
    • 2012-05-19
    • 2013-03-13
    • 2012-05-08
    • 1970-01-01
    • 2018-12-04
    相关资源
    最近更新 更多