【问题标题】:jQuery to control mutually exclusive and conditional checkboxesjQuery控制互斥和条件复选框
【发布时间】:2014-08-08 15:45:22
【问题描述】:

我需要四个复选框 - A、B、C、D。

A、B 和 C 是互斥的,因此一次只能检查其中一个。

只有在同时检查了 C 时才能检查 D。

是否可以在单击或更改事件上添加 jQuery 脚本来强制执行这些规则?

【问题讨论】:

  • 是的,有可能。有什么具体问题吗?

标签: c# jquery checkbox asp.net-mvc-5


【解决方案1】:

这是您的解决方案的 JSFiddle。 Fiddle

And code:
<input type="checkbox" id="a"> A<br/>
<input type="checkbox" id="b"> B<br/>
<input type="checkbox" id="c"> C<br/>
<input type="checkbox" id="d"> D<br/>

<script>
$('#a').click(function(){
   $('#b').attr("checked", false);
   $('#c').attr("checked", false);
   $('#d').attr("checked", false);
});

$('#b').click(function(){
   $('#a').attr("checked", false);
   $('#c').attr("checked", false);
   $('#d').attr("checked", false);
});

$('#c').click(function(){
   $('#a').attr("checked", false);
   $('#b').attr("checked", false);
   $('#d').attr("checked", false);
});

$('#d').click(function(){
    if($('#c').prop('checked')){
        $('#d').attr("checked", !checkBoxes.prop("checked"));
    }else{
       $('#d').attr("checked", false);
    }
   $('#a').attr("checked", false);
   $('#b').attr("checked", false);
});
</script>

【讨论】:

  • 非常感谢,为我工作得非常好,非常感谢您的帮助 :)
  • 我想知道您能否在这方面进一步帮助我?我有一些代码将选中框的值收集到一个字符串中:'var result = $.map($("input[name='group']:checked"), function (e,i) {返回 e.value; });'在其他地方效果很好,但在这种情况下却不行。在这里,即使在检查第二个值时,jQuery 未检查第一个值,返回的字符串仍保留未检查的值。您能告诉我从该复选框组中获取正确值的更好方法吗?
猜你喜欢
  • 2021-05-03
  • 1970-01-01
  • 2018-01-02
  • 2015-10-05
  • 1970-01-01
  • 2018-10-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多