suliuyes 2009-04-07 12:02
浏览 455
已采纳

JSP中,调用了JS方法,然后跳转,JS方法不执行。怎么办?

访问一个JSP文件,里面有这么一段:
out.println("alert('123');");

然后,用JSP的任意一种跳转,比如sendRedirect,forward等,跳到新页面。但是我调的这个JS方法是不会执行的。为什么?怎么办?谢谢。
而在JS里面用location.href跳转才有用,但是我这里不能这么用。

[b]问题补充:[/b]
明白的。 不过。用了flush,就不能再用response和request等进行跳转了。这样就不好办了。

  • 写回答

1条回答 默认 最新

  • iteye_17163 2009-04-07 13:48
    关注

    [code="java"]out.println("alert('123');"); [/code]

    这句话,不是调用js里面的方法。
    而只是把这句js代码输出到了由JSP生成的那个静态页面,也就是在JSP页面执行完,客户端得到这个页面之后,才会执行alert('123');

    而你在JSP页面中用sendRedirect进行跳转,使得页面还在生成之中(即还在服务器端执行),就已经跳转到达另外的页面了,所以alert('123')没有执行。

    你可以试一下out.flush()将out输出的内容发送到客户端,再调用JSP中的跳转。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 identifier of an instance of 类 was altered from xx to xx错误
  • ¥100 反编译微信小游戏求指导
  • ¥15 docker模式webrtc-streamer 无法播放公网rtsp
  • ¥15 学不会递归,理解不了汉诺塔参数变化
  • ¥15 基于图神经网络的COVID-19药物筛选研究
  • ¥30 软件自定义无线电该怎样使用
  • ¥15 R语言mediation包做中介分析,直接效应和间接效应都很小,为什么?
  • ¥15 Jenkins+k8s部署slave节点offline
  • ¥15 如何实现从tello无人机上获取实时传输的视频流,然后将获取的视频通过yolov5进行检测
  • ¥15 WPF使用Canvas绘制矢量图问题