【问题标题】:jquery is not working in jsp when the page is loaded via requestdispatcher.forward通过 requestdispatcher.forward 加载页面时,jquery 在 jsp 中不起作用
【发布时间】:2014-07-30 07:03:53
【问题描述】:

我正在使用 servlet。我创建了一个 jsp 页面,其中包含一些 jquery 脚本。当使用 response.sendredirect() 从 servlet 加载页面时,使用 jquery 的每个语句都可以正常工作。如下

response.sendRedirect("./ff/test.jsp");

我使用 requestdispatcher.forward() 做了同样的事情,因为我需要将数据传递给那个 jsp。

RequestDispatcher rd=request.getRequestDispatcher("./ff/test.jsp");
     rd.forward(request, response);

现在它已经重定向到正确的jsp页面,并且可以在该页面内访问数据。但问题是我收到引用错误“$未定义”。是否可以解决这个问题?

【问题讨论】:

  • 您是否在响应中写入任何其他内容导致此错误行为?
  • 没有。我没有添加更多语句
  • 你的情况很奇怪。你有其他东西阻止或停用你的 javascript/jquery,它没有在这里发布。提供重现问题的必要元素:servlet、JSP 等中的必要代码,否则您的问题不清楚。
  • 使用 firebug 或类似的,是否有任何 html/js 错误?
  • 请出示你的jsp相关部分。

标签: java javascript jquery jsp servlets


【解决方案1】:

您的 javascript 链接应类似于 <script type="text/javascript" src="<%= request.getContextPath() %>/yourpath/yourfilename.js></script>。这只是一个例子。您必须指定 request.getContextPath() 因为您的上下文现在是 servlet 的上下文而不是 jsp,所以相对路径在这里不起作用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-22
    • 1970-01-01
    • 1970-01-01
    • 2012-02-02
    • 2018-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多