首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何使用只选择筛选过的行

如何使用只选择筛选过的行
EN

Stack Overflow用户
提问于 2013-08-27 20:50:59
回答 2查看 1K关注 0票数 0

我在gridview上有一个用于筛选文本框的脚本,在每一行上有一个用于复选框的脚本。当我在网格中过滤某物时,我会得到一些过滤过的行。我想使用选择脚本来选择那些过滤过的行。但是它是在网格中选择所有的结果。

选中复选框脚本:

代码语言:javascript
代码运行次数:0
运行
复制
      $("#<%=gvCheckDetails.ClientID%> input:checkbox").live("click", function(event) {
            var tbl = $("#<%=gvCheckDetails.ClientID%>");
            var checkbox = $(this);
            var checkState = checkbox.is(":checked");
            var ancestorName = checkbox.parent().parent()[0].nodeName; // tr or th?                

            // if it's a header, we'll work with all rows (select on or off)
            if (ancestorName.toLowerCase() === "th") {
                $(tbl[0].config.rowsCopy).each(function() {
                    if (checkState)
                        $(this).find("input:checkbox").attr('checked', true);
                    else
                        $(this).find("input:checkbox").removeAttr('checked');
                });
            }
        });

有谁能帮我修改上面的脚本,以便在选中selectall时只选择筛选过的值(搜索文本框是使用aspx中的jscript动态过滤网格行)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-28 14:56:07

基于 Augusto Men 答案:

刚刚换了

代码语言:javascript
代码运行次数:0
运行
复制
$(this).find("input:checkbox").attr('checked', true);

使用

代码语言:javascript
代码运行次数:0
运行
复制
$(this).filter(':visible').find("input:checkbox").attr('checked', true);

因此,现在复选框检查是过滤和应用仅访问的。

非常感谢Augusto

票数 0
EN

Stack Overflow用户

发布于 2013-08-27 21:39:48

:visible选择器通常会完成这个任务。它只过滤可见的元素,包括DOM中的父元素。

代码语言:javascript
代码运行次数:0
运行
复制
$(tbl[0].config.rowsCopy).filter(':visible').each(function() {
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18475236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档