【问题标题】:delete button visible while checkbox is checked选中复选框时可见的删除按钮
【发布时间】:2018-02-21 14:52:22
【问题描述】:

我有 3 列的表格。第三列是每一行的复选框。

<tr id='sub".$this->getHtmlId()."_".$cpt."' class='mui-row'>
  <td class='mui-col-md-6'>".$row[0]."</td>
  <td class='mui-col-md-2'>".$row[1]."</td>
  <td class='mui-col-md-2' style='border:none'>
    <component id='box' class=\ "CheckBoxComponent\" name=\ "chk".$row[3]. "\" />
  </td>
</tr>";

我想要的是,当我选中一个复选框时,删除按钮变得可见,如果我选中第二个或更多,它保持可见,因为我可以同时删除多行。

现在,我所做的一切都是这样,当我检查一行时,按钮会出现,我点击第二个按钮会消失,当我点击第三个按钮时,它会再次出现

这里有一些我试过的例子:

$('#deleteButton').toggle('slow', function() {
  // Animation complete.
});

var chkbox = $(\".check\");
    button = $(\"#box\");
      button.attr(\"disabled\",\"disabled\");
        chkbox.change(function() {
            if (this.checked) {
              button.removeAttr(\"disabled\");
              }
              else {
                button.attr(\"disabled\",\"disabled\");
                }
              });

【问题讨论】:

    标签: javascript jquery html button checkbox


    【解决方案1】:

    您可以通过$(".check:checked").length获取选中复选框的计数

    如果有选中的复选框,则显示按钮。

    $(function() {
      //hide on init
      $("#deleteButton").hide();
    
      $(".check").click(function() {
        //get the number of checked 
        if ($(".check:checked").length) $("#deleteButton").show();
        else $("#deleteButton").hide();
      });
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <table>
      <tr class='mui-row'>
        <td class='mui-col-md-6'>1</td>
        <td class='mui-col-md-2'>1</td>
        <td class='mui-col-md-2' style='border:none'>
          <input type="checkbox" class="check">
        </td>
      </tr>
      <tr class='mui-row'>
        <td class='mui-col-md-6'>2</td>
        <td class='mui-col-md-2'>2</td>
        <td class='mui-col-md-2' style='border:none'>
          <input type="checkbox" class="check">
        </td>
      </tr>
      <tr class='mui-row'>
        <td class='mui-col-md-6'>3</td>
        <td class='mui-col-md-2'>3</td>
        <td class='mui-col-md-2' style='border:none'>
          <input type="checkbox" class="check">
        </td>
      </tr>
    </table>
    
    <button id="deleteButton" type="button">Delete!</button>

    【讨论】:

    • 它完全符合我的要求!非常感谢 !! :)
    猜你喜欢
    • 2014-11-05
    • 2013-02-19
    • 1970-01-01
    • 2021-02-07
    • 1970-01-01
    • 2019-03-22
    • 2021-09-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多