0

我试图将我的复选框结果作为二进制数放入一个变量中,以便我可以将它与另一个变量进行比较。我有 12 个复选框和一个来自数据库的变量,需要与 12 个复选框的结果进行比较。数据库中的示例变量可能是 110010111001,因此如果复选框的组合产生相同的 110010111001,那么就会发生一些事情。

我已尝试添加复选框结果,如下所示,但这只会将结果相加

<ul id="cat_list">
  <li><input type="checkbox" id="motorhome" name="catSelect">Motorhome</li>
  <li><input type="checkbox" id="caravan"  name="catSelect">Caravan</li>
  <li><input type="checkbox" id="tent"  name="catSelect">Tent</li>
</ul>

$(document).ready(function () {
     $('#cat_list').click(function () {
         let motorhomeSelect = $('input[id="motorhome"]').prop('checked');
         let caravanSelect = $('input[id="caravan"]').prop('checked');
         let checkBinary = motorhomeSelect + caravanSelect;
         console.log(checkBinary);
 }
4

1 回答 1

1

每次更改/单击复选框时,使用以下代码生成二进制代码。

HTML

<ul id="cat_list">
  <li><input type="checkbox" id="motorhome" name="catSelect">Motorhome</li>
  <li><input type="checkbox" id="caravan"  name="catSelect">Caravan</li>
  <li><input type="checkbox" id="tent"  name="catSelect">Tent</li>
</ul>

Javascript

$(document).ready(function () {
     $('#cat_list input').change(function () {
       var binaryNum = '';
        $.each($("#cat_list input"),function(){
          binaryNum +=$(this).prop('checked') ? '1' : '0';
        });
        console.log("Final Binary number ",binaryNum)
      });
});

Codepen - https://codepen.io/askannan/pen/yLaBpeG

于 2020-11-25T07:54:38.873 回答