如何在 foreach 循环中使用 JavaScript 变量之前从 JavaScript 变量中删除或排除组件

How to remove or exclude components from JavaScript variable before using it in foreach loop?

本文关键字:变量 JavaScript 删除 组件 排除 循环 foreach      更新时间:2023-09-26

我有一个包含 ASP.NET 面板和JavasScript的网页,当用户单击展开/折叠全部按钮时,JavasScript可以展开和折叠它们。我想排除一些面板,以便在用户单击按钮时它们不会展开或折叠(它们包含在用户控件中并显示为嵌套面板)。

我有以下JavaScript:

function expandCollapsePanels() 
{
    var collapse = $('#<%= lbltogglePanels.ClientID %>').html() == "Collapse all panels";
    var panels = Sys.Application.getComponents();
    for (var i in panels) 
    {
        //if panel name/ID contains 'pnlDetails', remove it (or don't collapse/expand it)
        panels[i].set_Collapsed(collapse);
    }
}

如何修改此代码以删除包含"pnlDetails"作为其 ID(或元素名称)一部分的面板?

你的意思是这样吗?

 for (var i in panels) 
    {
        //if panel name/ID contains 'pnlDetails', remove it (or don't collapse/expand it)
        if(panels[i].name.indexOf("pnlDetails") > -1 || panels[i].ID.indexOf("pnlDetails") > -1){
            panels[i].set_Collapsed(collapse);
        }
    }