3

I'm working on a small WebApp for iPad to present Reportings to a user from SSRS. I know that there are existing solution like the one of MobiWave, but my costumer ask me to develop a solution wich is more suitable for his enviroment.

So my question is the following. I'm loading the content of the SSRS into an iFrame and present it to the user. Now, when I click on the links the behavior is the following. In Chrome an Safari Mobile (on the iPad) the Site works as expected. When I runs the same site as a webapp the links are opened in a new safari window. I tried many solutions like this and this but I didn't got it working as expected.

My Code is the following:

<!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>

EDIT

The code which is loaded to the iFrame is the following:

<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>
Community
  • 1
  • 1
user1692091
  • 81
  • 1
  • 4

1 Answers1

1

Which links are opening the new tab, the jqm navigation or the reporting services report contents? Are your reports loaded as a full reporting services site Ui or are you linking directly to a reportserver basic rendering of the report?

If linking to a report server version of the report one fallback might be to render as PDF instead of HTML.

Consider removing the dependency on jQuery Mobile as it can interfere with normal page/click events. You may also want to look at other alternative mobile frameworks if you plan to build a larger mobile app and have problems with jQM compatibility:

Christopher Cook
  • 780
  • 8
  • 16
  • Thanks for the quick answer. The links from jqm works as expected. The Problem are the links within the iframe. I appended a generated site with two links, which are loaded into a new tab instead of beeing loaded into the iFrame. – user1692091 Sep 30 '12 at 09:29
  • Could be the use of jquery mobile interfering with page events: http://www.12live.de/de/blog/javascript/ipad-stay-in-webapp-fullscreen-when-links-in-embedded-iframe-are-clicked/ you could try iframe without jqm. – Christopher Cook Sep 30 '12 at 09:48
  • I've updated my answer above to suggest jQuery Mobile event problems. – Christopher Cook Oct 01 '12 at 10:06