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

时间:2009-06-19 06:42:59

标签: java javascript html window.open

我想打开一个新浏览器并从文件系统加载一个页面(将在单击该按钮时创建该页面)。我的应用程序是一个java servlet。基本上我允许用户在他们的网站上更改一些HTML。单击按钮,用户可以看到预览页面,该页面显示了所做更改后页面的样子。

最简单的方法是什么,你能看到什么问题,以及我们如何绕过它们。

我看到一个问题,例如,如果浏览器窗口试图立即打开文件,它甚至不存在。因此在尝试读取文件之前可能需要一些延迟。

5 个答案:

答案 0 :(得分:2)

这可以使用java脚本

完成

window.open('url','name',....)

你可以在这个函数中传递参数。

google for“javascript window.open function”

干杯

答案 1 :(得分:1)

也许您可以使用jQuery / AJAX或类似技术先将数据发布到服务器,然后在新窗口中打开它。

请参阅jQuery文档以获取示例:jQuery Post Example

答案 2 :(得分:0)

如果预览页面没有太多数据要传递,您可以将其作为url params传递而不是使用jQuery。如果数据很大,最好使用jQuery。 :)

as http://www.xyz.com?name=“name”.....

答案 3 :(得分:0)

我不熟悉java servlet,但是你不能将上传的html保存在服务器端的会话变量中,在预览页面中显示内容,然后将变量的内容保存到文件系统中用户是否接受更改?

答案 4 :(得分:0)

您可以使用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中,您只需等待文件出现即可。