8

我将我的 jstl 代码包含在我的 jsp 页面中的 javascript 文件中。我遇到的问题是,当我在 jsp 页面内的脚本中编写我的 jstl 代码时,它工作正常。但是当我在单独的 js 文件中编写相同的代码时,jstl 代码根本不起作用。无论如何我可以解决这个问题吗?任何帮助,将不胜感激。下面是我的代码。谢谢

$("img[name='cancel']").hover(function(){
      var src = "<c:url value='/images/stop.ico'/>";
      $(this).attr("src",src);
  },function(){
      var src = "<c:url value='/images/gtk_close.ico'/>";
      $(this).attr("src",src);
  });
4

1 回答 1

9

JSP 在向浏览器生成输出之前由服务器解释,因此您的标签在提供给浏览器之前被解释。使用标准配置,JS 文件不会被服务器解释,只是作为纯文本传递给客户端。

如果您想使用 JSP 动态生成 JS(如您的示例中所示),则需要先让服务器解释文件,然后再将其提供给客户端。最简单的方法是将 JS 的内容放入 JSP 文件中。然后在 html 页面上包含带有 script 标签且属性 src 等于 your.jsp 的脚本,例如 <script src="script.jsp"></script>

于 2013-06-03T21:53:04.397 回答