javascript - 如何使用jquery在两个不同的地方检查和取消检查具有相同名称的复选框的值?

标签 javascript jquery checkbox

我在两个不同的地方有同名的复选框,如下所示

一处

<input name="checkbox-group" class="place1" value="1" type="checkbox"  />
<input name="checkbox-group" class="place1" value="2" type="checkbox" />
<input name="checkbox-group" class="place1" value="3" type="checkbox" />
<input name="checkbox-group" class="place1" value="4" type="checkbox" />
<input name="checkbox-group" class="place1" value="1" type="checkbox" />

第二名

<input name="checkbox-group" class="place2" value="1" type="checkbox"  />
<input name="checkbox-group" class="place2" value="2" type="checkbox" />
<input name="checkbox-group" class="place2" value="3" type="checkbox" />
<input name="checkbox-group" class="place2" value="4" type="checkbox" />
<input name="checkbox-group" class="place2" value="1" type="checkbox" />

更新了我的问题,请检查一次,实际上第一个复选框值相同,第五个复选框值相同,因此无论选择哪个复选框,都只选择该复选框,在本例中,两个值 1 均已选中。

我想要的是,如果我自动选择一个位置的值1,它会自动选择第二个位置值1,并且自动选择第二个位置值1,它将使用jquery选择第一个位置值1复选框,请帮助我。

 var vtypeid = [];
        $.each($("input[name='vtypeid']:checked"), function(){    
            vtypeid.push($(this).val());

        }); 

任何人使用此代码该怎么做。

最佳答案

根据name="checkbox-group"进行选择,以防页面上存在不属于此功能的其他复选框:

$(document).ready(function() {
  var cbs = $('input[name="checkbox-group"]').click(function() {
    cbs.filter(($(this).is(".place1") ? ".place2" : ".place1")
               + '[value="' + this.value + '"]')
       .prop('checked', this.checked)  
  })
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
First group:
<input name="checkbox-group" class="place1" value="1" type="checkbox"  />
<input name="checkbox-group" class="place1" value="2" type="checkbox" />
<input name="checkbox-group" class="place1" value="3" type="checkbox" />
<input name="checkbox-group" class="place1" value="4" type="checkbox" />
<input name="checkbox-group" class="place1" value="5" type="checkbox" />
<br><br>
Second group:
<input name="checkbox-group" class="place2" value="1" type="checkbox"  />
<input name="checkbox-group" class="place2" value="2" type="checkbox" />
<input name="checkbox-group" class="place2" value="3" type="checkbox" />
<input name="checkbox-group" class="place2" value="4" type="checkbox" />
<input name="checkbox-group" class="place2" value="5" type="checkbox" />

注意:对于复选框,我建议使用单击事件而不是更改事件,因为后者在某些较旧的浏览器中对于键盘输入的行为有点奇怪。

关于javascript - 如何使用jquery在两个不同的地方检查和取消检查具有相同名称的复选框的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42383692/

相关文章:

javascript - 在eclipse中销毁javascript验证器

javascript - jquery加载问题

jquery ui按钮不一致的悬停状态

javascript - 除非有警报,否则 Jquery 变量无法获取正确的值

jquery - column-count 可以拆分为 div 中的 2 个复选框区域吗?

javascript - 显示选定的复选框在 javascript 中不起作用

javascript - 如何跨域postMessage?

javascript - 按下按钮时隐藏的复选框出现(正确),但再次按下时不会消失

javascript - 将数字转换为名称

google-app-engine - 如何将一个简单的 HTML 复选框变成 Google App Engine 上的 boolean 值?