复选框控件

时间:2012-03-26 20:48:08

标签: jquery asp.net-mvc

我有一个问题控制复选框,我正在阅读,并搜索主题,但我找不到任何适合我的东西,首先我在asp.net mvc表格上有3个复选框

<%= Html.CheckBox("cbCodigo") %> <label class="inline" for="Codigo">Codigo</label>
<%= Html.CheckBox("cbNombreCliente") %> <label class="inline" for="NombreCliente">Nombre del cliente</label>
<%= Html.CheckBox("cbCiudad") %> <label class="inline" for="Ciudad">Ciudad</label>

我想控制使用jquery,即用户,只需勾选其中一个复选框,我尝试使用hide();如果用户选中一个复选框,其他人只是隐藏,但事件的控制是如此困难,这不是我认为最好的方法。

感谢

编辑:回答我自己的问题

我知道这只是为了罕见隐藏其他选项,我只是想在我选中其中一个时“锁定”其他选项,我用这个来解决:

$('#cbCodigo').change(function() {
                if ($(this).is(':checked')) {
                    $('#cbNombreCliente').prop("checked", false);
                    $('#cbCiudad').prop("checked", false);
                }
            });

$('#cbNombreCliente').change(function() {
                if ($(this).is(':checked')) {
                    $('#cbCodigo').prop("checked", false);
                    $('#cbCiudad').prop("checked", false);
                }
            });

$('#cbCiudad').change(function() {
                if ($(this).is(':checked')) {
                    $('#cbCodigo').prop("checked", false);
                    $('#cbNombreCliente').prop("checked", false);
                }
            });

1 个答案:

答案 0 :(得分:0)

var $checkboxes = $('#cbCodigo, #cbNombreCliente, #cbCiudad');

$checkboxes.change(function(){
        $checkboxes.not(this).hide();
    });

虽然我不明白为什么你需要这样一个奇怪的要求 你不想让用户用其他复选框恢复他的选择吗?