使用不同的ID取消选中复选框

时间:2018-01-16 18:51:47

标签: jquery checkbox

我有以下2个复选框,一旦选择了另一个复选框,我需要取消选中。

  <div class="header">
           <h3 class="checkout-headers">STEP 3 - Billing Information </h3>
          <!--START: sameAsBilling1-->
<!--value="ON"-->
          <div class="sameAsBilling1">
            <input type="checkbox" name="sameAsBilling" id="sameAsBilling" value="1" onclick="showHideShipping();check_address('');"/>
            <label for="sameAsBilling">Same as Delivery Address</label>
            <div class="clear"></div>
          </div>
            <div class="differentBilling">
                <input type="checkbox" class="example" id="check2" value="2" onclick="myFunction2()"; return false;>Different Billing Address?</div>
          <!--END: sameAsBilling1-->
          <div class="clear"></div>
        </div>

我正在使用的功能就是这个;

          <script>
                var $ = jQuery;
var chk1 = $("#sameAsBilling");
var chk2 = $("#check2");

//check the other box
chk1.on('click', function(){
  if( chk1.is(':checked') ) {
    chk2.attr('checked', true);
  } else {
    chk2.attr('checked', false);
  }
});
</script>

现在的问题是当两者都被选中时取消选中的复选框,我将取消选择sameAsBilling按钮。

2 个答案:

答案 0 :(得分:1)

因为.on()不是the Element object上的函数,而是what getElementById() returns。然而,,是jQuery对象的一个​​函数。如果这就是您的意思:

var chk1 = $("#sameAsBilling");
var chk2 = $("#check2");

答案 1 :(得分:0)

除了David的回答,你可以使用普通的JS:

而不是

chk1.on('click', function(){..

您可以使用

chk1.addEventListener("click", function( event )..

目前尚不清楚您是打算标记jQuery还是只标记JavaScript(看起来它可以采用任何一种方式。