如何只使用JQuery选中一个复选框

时间:2014-04-14 11:30:41

标签: c# jquery html asp.net checkbox

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

我希望当用户选中一个复选框时,另一个复选框将取消选中(如果已选中)。 此代码有问题,用户可以选中一个复选框,但不能再次取消选中它。选择另一个复选框或尝试取消选中所选框

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

1 个答案:

答案 0 :(得分:3)

$(':checkbox').click(function(e){
    if($(this).is(':checked')){
        $(':checked').prop('checked', false);
        $(this).prop('checked', true);

    }
    else{
        e.preventDefault();
    }
});

example