【发布时间】:2016-10-25 11:57:10
【问题描述】:
我在 XPage 中打开了 db1.nsf/doc1。 XPage 上是同一服务器上相关文档 (db2.nsf/doc2) 的视图。我正在使用一个重复控件,每个条目周围都有一个链接,以在 ExtLib 对话框中打开 doc2。
注意:因为 doc2 上有 fileUpload 和 fileDownload 控件,所以我必须在对话框 (v8.5.3) 的 iframe 中打开 doc2。多亏了 Toohey 的文章 File Upload XPage Forms via OpenNTF.org Extension Library Dialogs,我的所有文件上传/下载工作都正常了。
问题是我无法使用对话框中 iframe 中的按钮关闭对话框。我的场景与 Toohey 的不同之处在于,我在 2 个不同的数据库中处理 2 个不同的文档。父打开器是 db1 中具有数据源 doc1 的 XPage,而对话子是 db2 中的 doc2。我似乎无法从 iframe 的子文档中获取父文档的句柄,因此我可以关闭对话框。它看起来像这样:
<html><body>
<form action="db1.nsf/mainDoc.xsp?doc1&action=openDocument"></form>
<div id="dialog">
<form action="db1.nsf/mainDoc.xsp?doc1&action=openDocument">
<iframe src="showDialog.xsp?databaseName=db2.nsf&doc2">
<html><body>
<form action="db1.nsf/showDialog.xsp?databaseName=db2.nsf&doc2&action=editDocument">
<button id="okBtn" type="submit">OK</button>
</form>
</body></html>
</iframe>
</form>
</div>
</body></html>
*注意:showDialog.xsp 是 db1 中的一个 XPage,它的数据源是 db2.nsf/doc2。 (我正在使用带有 tagName="iframe" 的 xp:panel。)
我想要 OK 按钮来保存文档(它会这样做)并关闭对话框(它不会)。我已经尝试了几种不同的“父母......”方法来处理并关闭它 - 根本没有成功。
如何从 iframe 中获取对话框元素的句柄以便关闭它?
*添加的服务器版本。
【问题讨论】:
标签: javascript iframe dialog xpages xpages-extlib