【问题标题】:Retain dialogArguments between postbacks在回发之间保留 dialogArguments
【发布时间】:2012-11-11 03:03:00
【问题描述】:

我目前正在创建一个可通过自定义 url 功能访问的页面。每当我的页面回发到服务器时,我都会丢失 window.dialogArguments 属性,因此无法访问 getFields()container.deleteField() 等。

有没有办法解决这个问题?

我的第一个想法是通过 XMLHttpRequest 调用与服务器进行所有通信,这将摆脱回发问题,但问题是代码(来自 Tridion 5.3)严重依赖服务器端逻辑及其运行做一个大工作来改变它。 (5.3 似乎使用window.returnValue 而不是dialogArguments

我的第二个想法是也许我可以在window.opener 中使用一些值,但是我找不到我需要的属性/功能。

【问题讨论】:

    标签: tridion tridion-2011


    【解决方案1】:

    如果您使用的是 ASP.NET 3.5 或更高版本,您还可以简单地将控件包装在 UpdatePanel 中。

    然后它将自动在异步客户端请求中执行回发,因此不会重新加载窗口。

    【讨论】:

      【解决方案2】:

      您可以在单独的 iframe 中进行回发。这将使主窗口保持活动状态,从而使您的代码可以访问window.dialogArguments

      据我所知,window.opener 应该能够在任何回发后继续存在。所以我不确定你在寻找什么。

      【讨论】:

      • 谢谢。明天我会尝试 iframe 回发解决方案并更新。
      • 我也不知道我在window.opener 中寻找什么。在 iFrame 中有我的 aspx 页面可以工作。谢谢!
      猜你喜欢
      • 2011-06-07
      • 2010-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-28
      • 2021-05-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多