使用javascript使面板可见

时间:2010-10-14 04:20:47

标签: javascript asp.net panel

我有一个具有属性的Panel,Visible设置为False

<asp:Panel ID="pnlUpload" runat="server" Visible="False" />

我尝试使用javascript作为下面的代码使其可见

document.getElementById('<%= Panel1.ClientID %>').style.visibility = 'visible';

但它不起作用,任何想法的人?

7 个答案:

答案 0 :(得分:8)

设置Visible =“false”使得面板不会在生成的HTML中呈现。如果你想让它在客户端显示/隐藏,你需要使它成为Visible =“true”并在style属性中使用CSS class /,其中“display”属性值为“block”或“none”as必需的。

答案 1 :(得分:2)

我的回答是没有ASP经验,但有很多JS / HTML / CSS经验,如果我完全错了,请耐心等待...

我想说Visible="False"标签不等同于CSS style="visibility:hidden;",因此JS调用无效。

答案 2 :(得分:1)

我试过.style.visibility ='visible'和visible =“true”和.style.display ='block' 和.style.display ='inline'所有这些东西都行不通。 但如果你写.style.display ='none'就行了。 任何人都知道解决方案 请告诉我 感谢

答案 3 :(得分:0)

我回答几乎没有ASP经验,比如Flash84x :-)

似乎在asp中,当你设置“Visibile = false”时,不会创建面板。

如果您想使用自定义JavaScript而不是.NET工具来隐藏面板,您应该直接在标签中应用样式,如下所示:

<asp:Panel id="pnlUpload" runat="server"
  Style="visibility:hidden;background-color:#CC9999; 

颜色:#FFFFFF;宽度:200;高度:200;       边界:实心1;填充:10" &GT;     .....
    

然后它会在html中渲染这样的东西 :

<div id="pnlUpload" class="text" style="visibility:hidden;

背景色:#CC9999;颜色:#FFFFFF;宽度:200;     高度:200;边界:实心1;填充:10" &GT;         .....

</div>

当然相应的javascript将是:

<script language="JavaScript">
document.getElementById('pnlUpload').style.visibility = 'visible';
</script>

答案 4 :(得分:0)

请将您的面板放入div中 并使用以下方式更改样式

<div>
<asp:Panel ID="pnlUpload" runat="server" Visible="False" />
</div>

的javascript

function visible()
{
document.getElementById('<%=pnlUpload.ClientID %>').style.display = 'block'
}

答案 5 :(得分:0)

要显示asp控件,您需要使用属性

ClientVisible

实施例:

<asp:Panel ID="someId" runat="server" ClientInstanceName="someIdClient" ClientVisible="False" />

如前一篇文章所述,该属性

Visible="False"

导致无法渲染控件。

要通过Javascript访问隐藏控件,只需键入:

function myFunction(){ someIdClient.SetVisible(true) 

答案 6 :(得分:0)

不要使用可见性。

document.getElementById("<%=myPanel.ClientID%>").style.display = "none"; //not visible
document.getElementById("<%=myPanel.ClientID%>").style.display = "inline"; //visible