javascript - Panel.Visible=false 不添加到 DOM 中吗?

标签 javascript html css asp.net dom

我有一个 .aspx,我在其中从代码隐藏动态添加几个面板。我想根据特定条件显示或隐藏它们。所以我正在使用。

Panel P1=new Panel();
Panel P2=new Panel();
P1.Visible=P2.Visible=false;
if(//Panel1 condition is true)
P1.Visible=true;
if(//Panel2 condition is true)
    P2.Visible=true;

现在,当我在开发人员工具中查看 DOM 时,没有标记对应的隐藏面板。我所看到的只是可见面板的标记。 我认为 .Visible=false 会将 display:none 添加到元素的样式中,而 .Visible=true 将添加 display:block 到元素的样式,所以我可以根据需要使用 javascript 进行一些 DOM 操作。是我的理解有误还是我在这里遗漏了什么?

最佳答案

服务器端对象 Visible=false 从渲染中移除它们的 Html 代码

让它 CSS Visible=false:

使用:

System.Web.UI.WebControls.Panel panel = new System.Web.UI.WebControls.Panel();
panel.Style["display"] = "none";

关于javascript - Panel.Visible=false 不添加到 DOM 中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45453634/

相关文章:

javascript - 附加到 img 时不会在 javascript 中触发 OnClick 事件

html - 特殊字符显示为文本而不是处理为 HTML

JavaScript/JSP - 为什么 "CheckboxStateChange"事件监听器不起作用?

javascript - 将固定侧边栏停止在页脚处 - 防止重叠

javascript - 组合框不会显示加载的商店数据

javascript - 如何根据产品点击在不同产品的特定 div 同一页面上显示产品描述?

javascript - 将 PHP 错误发送回索引

HTML超链接图像移动等

css - 为什么我的按钮没有包含在它们的容器中

javascript - 单击 SuiteScript 中的 (addSubmitButton) "Send"按钮后,如何在文本验证失败后发出警报?