0

我找到了一些导入 CSV 文件的代码。它使用文件上传控件来获取文件的句柄。当我只在常规 xPage 上使用它时效果很好。

但我想在扩展页面对话框中使用它,但它不起作用。导致问题的线路是这条线路?

var fileData:com.ibm.xsp.http.UploadedFile =   facesContext.getExternalContext().getRequest().getParameterMap().get(getClientId('fileUpload1'));

它总是返回 null。我的对话框上确实有一个名为 fileIpload1 的控件。

我在客户端 ID 中看到的区别在于,在直接 xPage 上,客户端 ID 是:view:_id1:_id19:fileUpload1,而当使用对话框时,客户端 ID 是:view:_id1:_id193:_id194:_id195: dlg_ImportParticipants:_content:form1:_id373:fileUpload1

如果有任何问题或解决方法,知道我做错了什么吗?

4

2 回答 2

3

这个问题的答案可以帮助你:Ext lib dialog and file upload controls

简而言之:您需要使用解决方法。

我使用它,因此如果您需要更多帮助,可以使用工作代码。

于 2013-01-07T21:53:38.360 回答
0

感谢每个链接。我想现在对我来说可能有点复杂。我想出了自己的解决方案(有点)。我所做的是在我的主 xpage 上放置一个带有文件上传控件的面板。我的按钮取消隐藏面板。我的导入按钮会导入代码,但也会再次隐藏它。我仍然遇到的问题是,在导入执行后,我仍然在更新 xpage 上的“嵌入式”视图。

顺便说一句,我正在使用 CSS display 属性隐藏/取消隐藏面板。

这不像您发布的链接那样优雅,但要简单得多。

于 2013-01-08T18:49:27.353 回答