【问题标题】:ASP.NET AJAX pageLoad() with multiple Updatepanels具有多个更新面板的 ASP.NET AJAX pageLoad()
【发布时间】:2009-11-16 07:08:13
【问题描述】:

您好,

我正在与一些正在使用更新面板开发应用程序的人合作。

我想在一个文本字段上使用 jQuery 日期选择器,该文本字段是可以通过此更新面板多次添加的行的一部分,并且我已经让下面的 JavaScript 成功工作:

function pageLoad(sender, args)
{
  if(args.get_isPartialLoad())
  {
      $(".datepicker").datepicker({ //rebind to all step datepickers
      duration: ''
      });
  }
}

但是,此页面上有多个更新面板,因此当它们全部更新时会触发它 - 有没有办法添加参数或类似的,以便仅在需要特定事件时触发?

谢谢, 克里斯

【问题讨论】:

    标签: asp.net-ajax updatepanel


    【解决方案1】:

    PageRequestManager 的 pageLoaded 事件有更多信息。 args 具有 get_panelsUpdated 和 get_panelsCreated(用于嵌套更新面板)属性。您可以使用它来确定哪些 UpdatePanel 已更新。您可能只是将更新面板的 div 本身传递到 jquery 选择器中,以仅过滤其中的元素。

    【讨论】:

      【解决方案2】:

      如果没有代码示例,很难确切地看到您在做什么,但我想到了一件事:您是否确保您的 UpdatePanel 仅在需要时更新,如 UpdateMode 参数设置的那样?

      <asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" runat="server">
      

      UpdateMode 默认为 always,这意味着如果页面上有许多 UpdatePanel,如果其中任何一个更新,它们都会更新,这通常不是您想要的.

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-02
        • 1970-01-01
        • 2011-08-19
        • 1970-01-01
        • 1970-01-01
        • 2011-05-23
        相关资源
        最近更新 更多