如何使用asp:LinkBut​​ton更改html面板

时间:2016-11-18 15:34:37

标签: asp.net

我遇到一个问题,当点击按钮时,面板不会改变。在错误的意义上。我可以使用以下超链接更改面板。

<a href="#" onclick="$('#panel1').hide(); $('#panel2').show()">Test</a>

但我想使用asp:LinkBut​​ton并且它不能像这样工作。

<asp:LinkButton ID="btngantipassword" runat="server" CssClass="btn btn-lg btn-primary btn-block" href="#" OnClick="$('#panel1').hide(); $('#panel2').show()">Change Password</asp:LinkButton>

我仍然是使用asp.net的初学者。帮我解决这个问题。

1 个答案:

答案 0 :(得分:2)

几乎每个Control都有一个Visibility property。可以在Control本身的aspx页面上设置此属性

<asp:Label ID="Label1" runat="server" Text="Label" Visible="false"></asp:Label>

该属性也可以在

后面的代码中设置
Label1.Visible = false;

visibility属性与JavaScript和CSS的工作方式不同。通常,如果您使用display:none定义一个CSS类,您将无法在浏览器中看到它,但它确实存在。如果您查看HTML,就可以找到它。

但是在asp.net中,隐藏的控件不会呈现给浏览器,因此不存在于HTML中。

将此问题扩展到您的问题。您可以像在问题中一样使用Panel Control。

<asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click">LinkButton</asp:LinkButton>
<br />
<asp:Panel ID="Panel1" runat="server">
    <p>Normal Content here...</p>
</asp:Panel>

这将以HTML格式呈现为

<div id="Panel1">   
    <p>Normal Content here...</p>    
</div>

OnClick事件为LinkButton1,您可以更改Visibility的{​​{1}}

Panel1
相关问题