jquery检查所有输入:按钮单击复选框

X9D*_*IGN 6 javascript jquery

是否可以编写如何在jquery中单击按钮时选择/取消选择功能?

<ul style="list-style:none">
    <li>
        <label><input class="checkhour" type="checkbox"> One</label>
    </li>
    <li>
        <label><input class="checkhour" type="checkbox"> Two</label>
    </li>
    <li>
        <label><input class="checkhour" type="checkbox"> Three</label>
    </li>
    <li><button type="button" class="checkall">select/deselect</button></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我尝试用几种方式做到这一点,但没有一个想要工作.

Ale*_*har 7

您可以通过分配全局变量来检查先前的条件:

var clicked = false;
$(".checkall").on("click", function() {
  $(".checkhour").prop("checked", !clicked);
  clicked = !clicked;
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul style="list-style:none">
  <li>
    <label>
      <input class="checkhour" type="checkbox">One</label>
    <label>
      <input class="checkhour" type="checkbox">Two</label>
    <label>
      <input class="checkhour" type="checkbox">Three</label>
  </li>
  <li>
    <button type="button" class="checkall">select/deselect</button>
  </li>
</ul>
Run Code Online (Sandbox Code Playgroud)