2011-09-21 48 views
1

我使用asp.net(C#)2010下视觉工作室JavaScript函数隐藏/取消隐藏面板

我有一个面板,其是默认设置2被隐藏(可见=假)

我需要创建一个JavaScript函数,该函数将在点击按钮上执行,以使该面板可见时隐藏和隐藏(如果可见)。 这应该是客户端,这里是我的代码到目前为止

<script type=text/javascript> 

    function func1() 
    { 
    i need this code please 
    } 

<asp:Panel ID="ResultsPanel" runat="server"> 

Some controls 

</asp:Panel> 

<asp:button id=button1 runat=server onclick=javascript:func1()>Hide/Unhide</asp:button> 
+0

如果您设置visible = false,面板将不会显示在您的DOM中,并且不能在以后设置为可见。你应该有visible = true,然后用CSS(style =“display:none”)隐藏它,然后用下面的解决方案之一显示它。 – Nicolai

回答

4

首先你需要使用OnClientClick属性,而不是OnClick为您的按钮,如果该键不运行任何服务器端代码,您可以使用HTML按钮,而不是asp:Button

<input type="button" onclick="func1();" value="Hide/Unhide"> 

您可以使用toggle功能jquery隐藏/取消隐藏面板

function func1() 
{ 
    var mypanel = $('#<%=ResultsPanel.ClientID%>'); 
    mypanel.toggle(); 
} 

DEMO

3

试试这个:

var Panel = document.getElementById("ResultsPanel"); 
if (Panel.style.display == "block" || Panel.style.display == "") 
{ 
    Panel.style.display = "none"; 
} 
else 
{ 
    Panel.style.display = "block"; 
}