簡體   English   中英

如何使用selectall javascript僅選擇過濾的行

[英]how to select only filtered rows using selectall javascript

我在gridview上有一個用於過濾文本框的腳本,在每一行上都有用於復選框的腳本。 當我在網格中過濾某些內容時,我將得到一些過濾后的行。我想使用selectall腳本選擇那些過濾后的行。 但是它正在網格中選擇所有結果。

選擇復選框腳本:

      $("#<%=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動態過濾網格行)

:visible選擇器通常可以解決問題。 它將僅過濾可見的元素,包括DOM中的父元素。

$(tbl[0].config.rowsCopy).filter(':visible').each(function() {

根據Augusto Men解決了答案:

剛更換

$(this).find("input:checkbox").attr('checked', true);

$(this).filter(':visible').find("input:checkbox").attr('checked', true);

因此,現在復選框復選框正在過濾並僅應用可見的復選框。

非常感謝奧古斯托

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM