我用bootstrap table可以做到全选,因为它有客户端分页(一次性取出数据)和服务端分页,用前者就能轻松实现。而且功能远不止于此。

获取行号,有这种方式: var rowid = $("#grid-table").jqGrid("getGridParam", "selrow"); 最后先在js最外部定义一个变量selId,然后使用如下代码在选中行时赋值: onSelectRow: function (rowid, status) { selId = rowid; //给最外层的selId赋值 }
主要需要完成的功能有两个:
1.选择上面的全选按钮之后下面的按钮全部被选中,取消全部的按钮就取消全选。
2.每次点击下面按钮就去检查是不是所有的按钮都选中了,要是所有的按钮都选中了把最上面的全选按钮就要选中,要是有一个没选中上面全选按钮就不选中。
1.针对第一个功能,可以采用一个flag变量来判断,设置初始值为0也就是全选按钮不选中,然后点击全选按钮判断,判断flag是否为0,如果为0就把所有的下面按钮选中,同时把flag变为1,如果flag为1,则把下面的按钮的checked都变为false,同时把flag变为0。
2.针对第二个功能就要相对复杂一点。给下面的按钮添加循环点击事件,然后把temp变量设为true,然后再循环判断是不是所有按钮的checked都为true,如果有一个为false就把temp变为false,最后把temp的值赋给全选按钮的checked。
3、基本过滤器选择器:first 、:last 、:not 、:even 、:odd 、:eq 、:gt 、:lt 、:header 、:animated
4、内容过滤器选择器:contains 、:empty 、:has 、:parent
5、可见性过滤器选择器:hidden 、:visible
6、属性过滤器选择器[attribute] 、[attribute=value] 、[attribute!=value] 、[attribute^=value] 、[attribute$=value] 、[attribute*=value] 、[attrSel1][attrSel2][attrSelN]
7、子元素过滤器选择器:nth-child 、:first-child 、:last-child 、:only-child
8、表单选择器:input 、:text 、:password 、:radio 、:checkbox 、:submit 、:image 、:reset 、:button、:file 、:hidden9、表单过滤器选择器:enabled 、:disabled 、:checked 、:selected