![](/img/trans.png)
[英]Open a new JFrame window from a button click in another JFrame window
[英]Open new browser window on click of a form button
我想打开一个新的浏览器并从文件系统中加载页面(将在单击该按钮时创建)。 我的应用程序是一个Java Servlet。 基本上,我允许用户更改其网站上的一些HTML。 单击按钮后,用户将看到一个预览页面,该预览页面显示了所做更改后页面的外观。
什么是最简单的方法,您会看到哪些问题,以及我们如何解决这些问题。
我看到一个问题,例如,如果浏览器窗口尝试立即打开文件,则该文件甚至不存在。 因此,在尝试读取文件之前可能需要一些延迟。
这可以使用Java脚本来完成
window.open( 'URL', '名',....)
您可以在此函数中传递参数。
谷歌搜索“ javascript window.open函数”
干杯
也许您可以使用jQuery / AJAX或类似技术将数据首先发布到服务器,然后在新窗口中打开它。
有关示例,请参见jQuery文档: jQuery Post Example
如果没有太多数据要传递给预览页面,则可以将其作为url参数传递,而不是使用jQuery。 如果数据很大,最好使用jQuery。 :)
作为http://www.xyz.com?name= “ name” .....
我不熟悉Java Servlet,但是您不能将上载的html保留在服务器端会话变量中,在预览页面中显示内容,然后在用户接受后将变量的内容保存到文件系统中变化 ?
您可以使用JavaScript。 在按钮上添加:
onClick="doMyOpenWindowFuncion();"
在页面的脚本部分中,您编写了类似
function doMyOpenWindowFunction() {
// if you want the client to wait, heres the place to do so.
// I assume you can make your servlet wait so the next line opens a window to the servlet
openWindow('/MyFancyPreviewServlet', 'Preview Window');
}
在您的Servlet中,您只需要等待文件出现就可以交付它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.