我在asp.net 3.5中工作并且有一些更新面板问题。我在页面中有一些html内容和Formview控件。我想在Formview中没有数据时隐藏html内容,并在Formview控件中显示数据时显示。我的Formview控件位于updatepanel中,它绑定到SqlDataSource,Formview以某些条件绑定。 如果有人知道如何解决这个问题,请帮助我。
答案 0 :(得分:0)
如果您希望在Ajax回发后隐藏HTML内容,则需要将其放在UpdatePanel
中,或者与FormView相同,或者单独使用。
如果它是单独的,你需要一些方法强制它在FormView更新时更新。您可以在一些代码隐藏中执行此操作,调用UpdatePanel的Update()
方法,或者向包含HTML的UpdatePanel添加AsyncPostBackTrigger
,也可以使用DataBound
事件的FormView。
另外,要轻松隐藏HTML内容,请将其放在Panel
中,然后使用Visible
属性。
触发器的一个例子:
<asp:UpdatePanel ID="updatePanel" ... runat="server">
<ContentTemplate>
...
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="formViewId" EventName="DataBound" />
</Triggers>
</asp:UpdatePanel>
答案 1 :(得分:0)
这个问题简单地解决了使用Updatepanels中的所有html内容和Updatepanels的UpdatePanel_preRender事件检查如果Gridview有数据然后显示html内容,否则隐藏