【问题标题】:jquery checkbox select alljquery复选框全选
【发布时间】:2013-11-02 02:02:42
【问题描述】:

我已将 jquery 全部设置为找到我的全选复选框,但由于某种原因,它仅在第二次单击时全选。

任何想法都将不胜感激。

    $("h2 #selectAllState").click(function () {

  var here = $(this).closest("div").attr('id');
  var stateDiv = "#"+here;
  var cityList = "#state"+here;


$(stateDiv+" h2 input:checkbox").change(function () {
        $(cityList).find(':checkbox').prop("checked", this.checked);
    });

});

或者是jfiddle

【问题讨论】:

  • 在第一次单击之前,您不会初始化更改功能。你会期待什么?

标签: jquery select checkbox


【解决方案1】:

您最初的问题是在第一次单击发生之前您没有绑定change 处理程序。我已经解决了这个问题,并设法使用遍历函数简化了您的代码。

http://jsfiddle.net/w8ZLV/

$("#selectAllState").click(function () {    
    $(this).closest('div').find('.cityPick :checkbox').prop("checked", this.checked);
});

此外,您可能会在其他州重复此块,在这种情况下,您可能拥有多个 ID 为 #selectAllState 的元素,这是不允许的。如果我的假设是正确的,那应该改为类而不是 id。

【讨论】:

  • 非常感谢!!是的,我正在使用 php 从数据库中提取。我还没有完全理解“这个”,所以我给事情贴上了标签。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-03
  • 2020-12-24
  • 1970-01-01
  • 2018-01-19
  • 2016-02-20
  • 1970-01-01
相关资源
最近更新 更多