【发布时间】:2016-05-09 06:36:28
【问题描述】:
我目前正在将一些插件模块从 2.x 版本现代化到基于 OSGi 的 4.x。该项目使用 Eclipse 应用程序,并利用其视图和透视架构作为选项卡式浏览器。
研究旧代码并运行 Eclipse 应用程序,这是我理解的一个特定功能的预期行为:
- 单击链接会在新选项卡中打开一个面板,其中显示一个包含 Javascript 的 HTML 文件。
- HTML 页面包含一个以提交和取消按钮结束的表单。
- 单击任一按钮应关闭选项卡。提交按钮当然会首先提交表单数据。
以上大部分操作都按预期工作,但是单击任一按钮会导致整个 Eclipse 应用程序尝试终止,而不是仅关闭一个选项卡(我收到了一个确认提示,询问我是否要退出 Eclipse)。在尝试终止 Eclipse 应用程序之前,提交按钮确实成功地将提交的信息更新到数据库中。
这就是代码中有问题的部分:
function onSubmit() {
//processForm();
if (opener) {
opener.newAddressValue(newToAddress);
window.close();
} else if (parent.parent) {
parent.parent.newAddressValue(newToAddress);
parent.parent.closeUsrFrame();
} else {
parent.newAddressValue(newToAddress);
parent.closeUsrFrame();
}
}
function onCancel() {
if (opener) {
window.close();
} else {
parent.closeUsrFrame();
}
}
我怀疑预期的行为是程序流到达window.close(),此时包含已打开面板的选项卡应该关闭,但它会导致整个 Eclipse 应用程序终止。 在 Eclipse 4.x 中使用 JavaScript 退出当前选项卡的正确方法是什么?
【问题讨论】:
-
Core Eclipse 根本不支持插件中的Javascript,所以我不明白你在这里做什么。
-
呃,不是吗?我正在使用 Eclipse 4.5.1。面板显示一个 HTML 文件,其中包含 javascript。
-
编辑提及 HTML。我不确定为什么这不在我的问题中,可能是不小心删除了
标签: javascript eclipse eclipse-plugin