Jquery取消选中复选框中的兄弟姐妹

时间:2016-02-01 07:46:55

标签: javascript jquery

我想同时检查一个复选框。 我想检查一下这个值。

如果我删除所有div标签但是我需要为组织设置div标签,它会起作用。

所以我的js代码:

$('.myCheckbox').click(function() {
    $(this).siblings('input:checkbox').prop('checked', false);
  var value = $(this).val();
  console.log("value = "+value);
  });

我的html代码没有div而是div:

<div id="id_1" class='class_1'>

  <div id="id_a" class='class_a'>
    <div>
      <img src="fr.png">
      <input type="checkbox" class="myCheckbox" value="fr" />
    </div>
    <div>
      <img src="cs.png">
      <input type="checkbox" class="myCheckbox" value="cs" />
    </div>
    <div>
      <img src="en.png">
      <input type="checkbox" class="myCheckbox" value="en" />
    </div>
  </div>

  <div id="id_b" class='class_b'>
    <div>
      <img src="bc.png">
      <input type="checkbox" class="myCheckbox" value="bc" />
    </div>
    <div>
      <img src="tl.png">
      <input type="checkbox" class="myCheckbox" value="tl" />
    </div>
    <div>
      <img src="jk.png">
      <input type="checkbox" class="myCheckbox" value="jk" />
    </div>
  </div>

</div>

5 个答案:

答案 0 :(得分:1)

$('.myCheckbox').click(function() {
   $('.myCheckbox').prop('checked', false);
   $(this).prop('checked') ? $(this).prop('checked', false) : $(this).prop('checked', true);
   var value = $(this).val();
   console.log("value = "+value);
});

答案 1 :(得分:1)

您目前的情况是使用无线电的完美候选者,您需要按名称对它们进行分组:

<div id="id_1" class='class_1'>

  <div id="id_a" class='class_a'>
    <div>
      <img src="fr.png">
      <input type="radio" name='langa' class="myRadio" value="fr" />
    </div>
    <div>
      <img src="cs.png">
      <input type="radio" name='langa' class="myRadio" value="cs" />
    </div>
    <div>
      <img src="en.png">
      <input type="radio" name='langa' class="myRadio" value="en" />
    </div>
  </div>

  <div id="id_b" class='class_b'>
    <div>
      <img src="bc.png">
      <input type="radio" name='langb' class="myRadio" value="bc" />
    </div>
    <div>
      <img src="tl.png">
      <input type="radio" name='langb' class="myRadio" value="tl" />
    </div>
    <div>
      <img src="jk.png">
      <input type="radio" name='langb' class="myRadio" value="jk" />
    </div>
  </div>

</div>

然后你可以使用这个脚本:

$('.myRadio').change(function() {
   var value = $(this).val(); // this will get you the checked radio value.
   console.log("value = "+value);
});

答案 2 :(得分:0)

定义具有相同名称的复选框,例如

<input type="checkbox" class="myCheckbox" value="bc" name="common_name" />

答案 3 :(得分:0)

首先找到父母兄弟姐妹:

$('.myCheckbox').click(function() {
    $(this).parent().siblings().find('input:checkbox').prop('checked', false);
  });

答案 4 :(得分:0)

根据定义,当您想要为用户选择多个选项时,会使用复选框。如果您希望他只选择一个值,请使用无线电:)

示例 -

 <input type="radio" name="gender" value="male"> Male<br>
 <input type="radio" name="gender" value="female"> Female<br>
  <input type="radio" name="gender" value="other"> Other

但如果必须通过复选框完成,您可以尝试:)

<input type = "checkbox" name = "sample" value = "1">firsr
<input type = "checkbox" name = "sample" value = "2">second
<input type = "checkbox" name = "sample" value = "3">third

的Javascript

$(document).ready(function() {
$('input[name=sample]').click(function(e){

$( "input[name=sample]").prop('checked', false);
$(this).attr('checked','checked')
})
});