繁体   English   中英

单击表单按钮打开新的浏览器窗口

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM