asp.net - ASP.NET 页面中的各种 asp 控件

标签 asp.net controls load

我正在创建一个产品页面,例如,用户在单选按钮列表中选择一个选项,然后当选择一个单选按钮时,带有该产品的各种选项的控件会出现在占位符或 div 中。

目前这是代码:

aspx:

<form runat="server">
<asp:CheckBoxList ID="Lentes" runat="server" OnClick="EscolheLentes">
    <asp:ListItem Value="LU">
    Lentes Unifocais
    </asp:ListItem>
    <asp:ListItem Value="LP">
    Lentes Progressivas
    </asp:ListItem>
</asp:CheckBoxList>
<asp:PlaceHolder runat="server" ID="PHLentes"></asp:PlaceHolder>
</form>

aspx.vb:

Protected Sub EscolheLentes()
        Dim ControlLente As Control
        If (Me.Lentes.Items.FindByValue("LU").Selected) Then
            ControlLente = LoadControl("LentesUnifocais.ascx")
        ElseIf (Me.Lentes.Items.FindByValue("LP").Selected) Then
            ControlLente = LoadControl("LentesProgressivas.ascx")
        End If
        Me.PHLentes.Controls.Add(ControlLente)
    End Sub

需要使用一些ajax来加载控件吗? 我的方向正确吗?

谢谢。

最佳答案

有几种方法可以实现这一目标:

  • 真正的 ASP.Net Web 表单:使用 AutoPostback 进行回发并利用其他控件的可见性
  • Javascript:加载页面可能显示的所有数据,并使用 javascript 处理条件显示。仅当一页上显示的数据量有限时,这才是合理的。如果您这样做,您可能想研究一下 JQuery 或类似的东西。
  • Ajax:仅异步加载您需要的位。您可以使用 MSAjax 框架或 Jquery(或类似框架)来执行客户端代码。

第一个选项可能是实现速度最快的选项。

关于asp.net - ASP.NET 页面中的各种 asp 控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2886264/

相关文章:

javascript - Jquery 在动态创建的 div 上淡入背景图像

c# - 从数据库填充菜单

c# - 更新到 2.5.5.2700 后 RavenDB DateTime 错误

c# - 我需要在处理完控件后删除控件吗?

javafx - JavaFx将Window-Control-Buttons添加到菜单栏(类似于IntelliJ)

php - 如何实现MySQL : :"LOAD DATA LOCAL INFILE" in PHP?

c# - 带有母版页的 asp.net 上的 session 超时

c# - asp.net 日历日期范围

c++ - 在 C++ MFC 应用程序中绘制图形

java - 如何在小程序和桌面应用程序中一致地加载资源?