从 Servlet 调用 Javascript 函数
Calling Javascript function from Servlet
这是我的情况:
我想从链接到 JSP 文件的 servlet 调用 jAlert(String)
Javascript 方法。
我尝试了以下
response.getWriter().println("<script type='text/javascript'>jAlert('Hello');</script>");
但是没有结果。
之后,我从Mozilla找到了一个叫Rhino
的工具,但是我不知道怎么用。求助!
谢谢。
response.getWriter().println("<script type='text/javascript'>jAlert('Hello');</script>");
上面的代码永远不会在浏览器上呈现,因为您正在将请求转发到 JSP 页面,无论是使用 RequestDispatcher 还是使用 sendRedirect 方法。在这两个选项中,只会针对您在 JSP.
上所写的内容生成响应
在开始 Web 应用程序开发之前,您应该了解的第一件事是客户端和服务器端之间的区别。
您的代码将只呈现建议浏览器调用该方法的标签。但它不会呈现该方法,因此在浏览器(客户端)上会出现未找到方法的错误,并且仅当浏览器希望仅使用脚本标记并调用 jAlert('Hello');
.
时才会出现该错误
对于您的问题,无法从 servlet(服务器端)调用客户端 javascript 方法。
Rhino 是 java 中的一个 javascirpt 引擎,用于 运行 javascrpt。但我不明白你为什么要在 JSP 上执行 javascript 方法。 Rhino 是一个 java 库,代码将在服务器端执行。
这是我的情况:
我想从链接到 JSP 文件的 servlet 调用 jAlert(String)
Javascript 方法。
我尝试了以下
response.getWriter().println("<script type='text/javascript'>jAlert('Hello');</script>");
但是没有结果。
之后,我从Mozilla找到了一个叫Rhino
的工具,但是我不知道怎么用。求助!
谢谢。
response.getWriter().println("<script type='text/javascript'>jAlert('Hello');</script>");
上面的代码永远不会在浏览器上呈现,因为您正在将请求转发到 JSP 页面,无论是使用 RequestDispatcher 还是使用 sendRedirect 方法。在这两个选项中,只会针对您在 JSP.
上所写的内容生成响应在开始 Web 应用程序开发之前,您应该了解的第一件事是客户端和服务器端之间的区别。
您的代码将只呈现建议浏览器调用该方法的标签。但它不会呈现该方法,因此在浏览器(客户端)上会出现未找到方法的错误,并且仅当浏览器希望仅使用脚本标记并调用 jAlert('Hello');
.
对于您的问题,无法从 servlet(服务器端)调用客户端 javascript 方法。
Rhino 是 java 中的一个 javascirpt 引擎,用于 运行 javascrpt。但我不明白你为什么要在 JSP 上执行 javascript 方法。 Rhino 是一个 java 库,代码将在服务器端执行。