0

我编写了代码,其中对 ServletA 的请求将调用 ServletB,然后将用户重定向到外部页面(即 PayPal 页面)。

该代码工作正常并重定向到正确的页面,直到将 jquery 和 jquery.mobile 包含到初始 jsp 页面。

<html> 
<head>
  <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
  <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js">   </script>
</head>
<body>
  <a href="/myApp/ServletA">Call to ServletA</a>
</body>
</html>

在调试时,我知道我到达了 ServletB,但由于某种原因,我没有被重定向到外部链接。该页面仅在短暂出现“<strong>错误加载页面”的情况下挂起。

4

1 回答 1

1

默认情况下,JQM 将通过 AJAX 请求所有页面。这样做时,JQM 正在加载页面并抓取第一个<div:jqmData(role="page"></div>.

如果 servlet 页面不是 JQM 页面,则链接将不起作用。

因此,为了加载第 3 方提供程序或 servlet 页面,您需要通过指定来告诉 JQM 不要在链接上使用 AJAX data-ajax="false",这将覆盖 JQM 并执行常规页面加载。

这将离开您的应用程序,这样做时您应该注意这一点。

于 2013-01-28T18:10:00.777 回答