从Servlet调用Javascript函数

时间:2015-03-20 05:56:54

标签: java javascript jsp servlets rhino

这是我的情况:

我想从链接到JSP文件的servlet调用jAlert(String) Javascript方法。

我尝试了以下

response.getWriter().println("<script type='text/javascript'>jAlert('Hello');</script>");

但没有结果。

之后,我找到了一个名为Rhino的工具,来自Mozilla,但我不知道如何使用。救命啊!

感谢。

2 个答案:

答案 0 :(得分:1)

在开始Web应用程序开发之前,您应该学习的第一件事是客户端和服务器端之间的区别。

您的代码只会呈现建议浏览器调用该方法的标记。但它不会渲染该方法,因此浏览器(客户端)上将找不到方法错误,并且仅当浏览器希望只使用脚本标记并调用jAlert('Hello');时才会出现错误。

并且对于您的问题,无法从servlet(服务器端)调用客户端javascript方法。

Rhino是java中的javascirpt引擎,用于运行javascrpt。但我不明白你为什么要在JSP上执行javascript方法。 Rhino是一个java库,代码将在服务器端执行。

答案 1 :(得分:0)

response.getWriter().println("<script type='text/javascript'>jAlert('Hello');</script>");

以上代码永远不会在浏览器上呈现,因为您使用RequestDispatcher或使用sendRedirect方法将请求转发到JSP页面。在这两个选项中,只会为您在JSP上编写的内容生成响应。