javascript - 需要一种通过单选按钮集成反转功能(全部选中/取消全部选中)的方法 - 对于 Checkbox 组

标签 javascript jquery html checkbox radio-button

对我在这里所做的事情比较陌生。我只是将我在这里找到的东西和其他开放资源放在一起。

我遇到的问题是 - 使用当前设置,一个人可以选择一个单选按钮并选中几个框,然后转到另一个单选按钮选项并选择其下的框。当有人选择单选按钮选项时,我试图让复选框全部选中,当有人在单选按钮组上选择另一个选项时,我试图让复选框全部选中。

因此,如果我在“常规”下选择选项“a”,然后转到“详细”- 应该取消选中“a”。

这是我在 JFiddle 中使用的代码

HTML:

<div id="RadioWidget">
<label><input type="radio" name="chkboxs" value="General" />General Clean</label>
<label><input type="radio" name="chkboxs" value="Detailed" />Detailed Clean</label>
<label><input type="radio" name="chkboxs" value="Commercial" />Commercial Clean</label>
</div>
<div id="General" class="desc">
<p class="maintextBlue">General
    <label><input type="checkbox" name="GeneralOptn[]" value="a" />a</label>
    <label><input type="checkbox" name="GeneralOptn[]" value="b" />b</label>
</p>
</div>
<div id="Detailed" class="desc">
<p class="maintextBlue">Detailed
    <label><input type="checkbox" name="DetailedOptn[]" value="a" />a</label>
    <label><input type="checkbox" name="DetailedOptn[]" value="b" />b</label>
</p>
</div>
<div id="Commercial" class="desc">
<p class="maintextBlue">Commercial
    <label><input type="checkbox" name="CommercialOptn[]" value="a" />a</label>
    <label><input type="checkbox" name="CommercialOptn[]" value="b" />b</label>
</p>
</div>

脚本:

$(document).ready(function() {
    $("div.desc").hide();
    $("input[name$='chkboxs']").click(function() {
        var test = $(this).val();
        $("div.desc").hide();
        $("#" + test).show();
    });
});

这是我发现的一段反转复选框状态的脚本。但不确定如何将它集成到单选按钮中。此代码段正在处理按钮的 onClick() fn。

$("A[href='#invert_selection']").click( function() {
    $("#" + $(this).attr('rel') + " INPUT[type='checkbox']").each( function() {
        $(this).attr('checked', !$(this).attr('checked'));
    });
return false;
});

非常感谢任何帮助...

最佳答案

这需要您将 IDS 添加到您的输入字段中……但它会起作用。 如果你想控制多个输入字段,你总是可以使用类来..

jQuery("#generalA").click(function(){
  if(jQuery(this).is(':checked')){
    // is checked do some stuff if you want
  }else{
    // is mot checked uncheck the checkbox with an ID of #detailedA
    jQuery('#detailedA').prop('checked', false); 
  }
  return false;
});

关于javascript - 需要一种通过单选按钮集成反转功能(全部选中/取消全部选中)的方法 - 对于 Checkbox 组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26810435/

相关文章:

java 如何转义字符串中的重音字符

html - 有没有办法连接 CSS 类选择器?

html - CSS 动画在动画期间将第二个元素向下移动

javascript - Django - 我已将 onclick 函数添加到 html 中,每当我单击不同的按钮时,它都会呈现相同的数据。如何解决这个问题?

jquery - 如何在 ASP.Net 中实现类似 Chrome 的选项卡?

javascript - 我应该如何检查 Jasmine 或javascript中的排序语句

javascript - 创建交互式非矩形 HTML 元素的最佳方式

javascript - 如何使用 jQuery 获取表中前两个 <tr> 的高度?

javascript - JavaScript 中的 isDev 是什么?

javascript - 我的 jquery 脚本从不执行,我认为这是类选择器的问题