感谢您对我的用例的帮助。我有一个Servlet,它在Apache Velocity模板(.vm)文件中使用javascript呈现一些信息。
现在,在我将此模板返回到浏览器之前,我想将整个HTML存储到我需要从.vm模板访问整个HTML的本地文件系统中。我坚持做最后一步。
答案 0 :(得分:6)
Web应用程序是client⟷server应用程序,这意味着客户端(即您的浏览器)与Web服务器之间存在明显的分离。您在浏览器中看到的服务器和HTML之间没有直接连接。
尝试可视化过程:
.vm
文件。.vm
文件由服务器上的servlet读取,并呈现为HTML的字符串表示形式。Velocity模板(或服务器上的任何其他代码)无法访问浏览器中现在的HTML,除非浏览器在另一个请求中明确地将其发送回服务器。
你能做的是:
click
事件的JavaScript代码。var html = document.getElementById('id_of_the_element').innerHTML;
XMLHttpRequest
将此字符串发送到服务器,使用浏览器的原始XHR支持或您选择的JS框架。