我们有类似的问题。在高交互性(仅在 Internet Explorer 中)它工作正常。但是,我们在出现此问题的 OpenUI 中支持其他浏览器。
简而言之,我们解决这样的问题:
- 我们区分我们是在 OpenUI 还是 High Interactivity
- 如果它是高交互性(因此它运行 Internet Explorer)-> 一切都和以前一样
- 如果是 OpenUI -> 我们在演示模型中使用 jquery 中的自定义对话框
在 applet 方法中,如果不是 OpenUI,我们将保持一切正常:
function Applet_PreInvokeMethod (name, inputPropSet)
{
//other code
if (!IsOpenUI) {
var ShowModalOptions = "dialogHeight:150px;dialogLeft:120px;dialogWidth:450px;scrollbars:no";
var sFileSelected = theApplication().ShowModalDialog("FilePicker.htm", "", ShowModalOptions);
//other code
}
}
然后,我们在 OpenUI 中为特定的小程序引入 Presentation Model:
presentation model for the applet {
...
function PreInvokeMethod(methodName, psInputArgs, lp, returnStructure) {
try {
if (methodName == "MethodName") {
// show jquery dialog having similar to FilePicker.htm
...
// other code
}
}
}
...
}
您将需要复制代码(对于 HI 和 OpenUI),您需要保留 FilePicker.htm,并且您需要为 OpenUI 制作类似的对话框。