iPad上的Webapp会在新的Safari选项卡中打开iFrame的链接

时间:2012-09-30 08:42:58

标签: ipad web-applications iframe reporting-services

我正在开发一个适用于iPad的小型WebApp,以便从SSRS向用户展示报告。我知道现有的解决方案就像MobiWave一样,但是我的客户要求我开发一种更适合他环境的解决方案。

所以我的问题如下。我正在将SSRS的内容加载到iFrame中并将其呈现给用户。现在,当我点击链接时,行为如下。在Chrome中,Safari Mobile(在iPad上)可以按预期运行。当我运行与webapp相同的站点时,链接将在新的safari窗口中打开。我尝试了许多解决方案,例如thisthis,但我没有按预期工作。

我的代码如下:

<!DOCTYPE html>
<html>
<head>
  <title> TEST </title>
  <link rel="stylesheet"  href="css/jquery.mobile-1.1.1.min.css" />
  <link rel="stylesheet" href="css/style.css" />
  <script src="js/jquery-1.7.1.min.js"></script>
  <script src="js/jquery.mobile-1.1.1.min.js"></script>
  <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=yes">
  <link rel="apple-touch-icon" sizes="72x72" href="images/touch-icon-ipad.png" />
  <link rel="apple-touch-startup-image" href="images/startup.png">
  <meta name="apple-mobile-web-app-capable" content="yes" />
  <meta name="apple-mobile-web-app-status-bar-style" content="black" />
</head>
<body>
  <div data-role="page" id="home">
<div data-role="header">
      <ul data-role="controlgroup" data-type="horizontal" class="localnav">
    <li><a data-role="button" data-rel="back" data-icon="arrow-l">Back</a></li>
    <li><a href="./" data-role="button" data-icon="home" data-ajax="false">Home</a></li>
  </ul>
</div> 
<div id="content" data-role="content">
      <iframe src="../ReportServer"></iframe>
</div>
  </div>
</body>
</html>

修改

加载到iFrame的代码如下:

<html>
  <head>
    <meta name="Generator" content="Microsoft SQL Server Reporting Services, Version 10.50.1600.1">
    <title>localhost/ReportServer - /Reportings</title>
  </head>
<body><H1>localhost/ReportServer - /Reportings</H1><hr>
  <pre>
    <A HREF="http://localhost/ReportServer?&amp;rs%3ACommand=ListChildren">[In &#252;bergeordnetes Verzeichnis]</A>
    Donnerstag, 13. September 2012 15:16        39033 <A HREF="?%2fReportings%2fReport1&amp;rs:Command=Render">Report1</A>
 </pre>
 <hr>
 Microsoft SQL Server Reporting Services, Version 10.50.1600.1
 </body>
</html>

1 个答案:

答案 0 :(得分:1)

哪些链接正在打开新标签页,jqm导航栏或报告服务报告内容?您的报告是作为完整的报告服务站点Ui加载的,还是直接链接到报告服务器的报告基本呈现?

如果链接到报表的报表服务器版本,则可以将一个备用内容呈现为PDF而不是HTML。

考虑删除对jQuery Mobile的依赖,因为它可能会干扰正常的页面/点击事件。如果您计划构建更大的移动应用程序并且遇到jQM兼容性问题,您可能还想查看其他替代移动框架: