我想打开一个新浏览器并从文件系统加载一个页面(将在单击该按钮时创建该页面)。我的应用程序是一个java servlet。基本上我允许用户在他们的网站上更改一些HTML。单击按钮,用户可以看到预览页面,该页面显示了所做更改后页面的样子。
最简单的方法是什么,你能看到什么问题,以及我们如何绕过它们。
我看到一个问题,例如,如果浏览器窗口试图立即打开文件,它甚至不存在。因此在尝试读取文件之前可能需要一些延迟。
答案 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中,您只需等待文件出现即可。