none
Popup mit Javascript funktioniert nicht

    Frage

  • Hallo zusammen,

    Ich habe ein Problem mit einer in Silverlight-Anwendung. In der Anwendung werden über einen Webservice PDF-Dateien erzeugt und dann auf dem Webserver abgelegt. Diese PDF-Dateien sollen dann über den Silverlight-Client heruntergeladen. Das Herunterladen der PDF-Dateien soll automatisch ohne Interaktion des Anwenders nach dem Ende des Prozesses der Erstellung stattfinden. Der Anwender soll also nicht auf einen Button oder Hyperlink klicken müssen.

    Hierfür habe ich eine Lösung entwickelt, die wie folgt aussieht:

          HtmlPage.Window.Eval(
            string.Concat("window.open('Download.ashx?fileName=", strDateiPfad, "', '_blank');"));

    Dies funktioniert auf mehreren Clientrechnern mit Firefox Webbrowser aus der Silverlightanwendung heraus wunderbar. Es gab bisher keine Problemmeldungen seitens der Anwender.

    Bei Anwendern mit IE8 tritt allerdings (etwa 50% unserer Anwender berichten davon) das Problem auf, dass das neue Fenster im IE geöffnet wird, sich aber dann sofort wieder schließt und kein Download gestartet wird. Auf meinem Rechner habe ich genau das gleiche Problem, selbst bei deaktiviertem Popup-Blocker. Woran kann das liegen? Das muss doch irgendeine Einstellung in den Sicherheitsrichtlinien sein...

    Vielen Dank im Voraus! :)

    Freitag, 21. Mai 2010 10:01

Antworten

  • > Bei Anwendern mit IE8 tritt allerdings (etwa 50% unserer Anwender berichten davon) das Problem auf, dass das neue Fenster im IE geöffnet wird, sich aber dann sofort wieder schließt und kein Download gestartet wird. Auf meinem Rechner habe ich genau das gleiche Problem, selbst bei deaktiviertem Popup-Blocker. Woran kann das liegen? Das muss doch irgendeine Einstellung in den Sicherheitsrichtlinien sein...

    Nein. Das ist ein Popup-Blocker. Aber nicht der im IE.

    --
    Kai


    IEFAQ: http://iefaq.info Newsgroup: microsoft.public.de.internetexplorer
    Donnerstag, 27. Mai 2010 21:42
  • Hi,

    ich habe eine Lösung gefunden. Es lag tatsächlich nicht am IE8 Popup-Blocker oder sonst einem Blocker, welcher noch auf dem Rechner installiert war.

    Das ganze Problem scheint mit den Sicherheitseinstellungen im IE8 verankert zu sein. Die entsprechende Domain muss als "Vertrauenswürdige Sites" oder als "Lokales Intranet" eingetragen werden und der Level der Sicherheitsstufe der Zone auf "niedrig" herabgesetzt werden, damit es funktioniert. 

    Welche Einstellung es genau ist werde ich noch evaluieren. 

    Gruß

    Yves

    Montag, 26. September 2011 12:50

Alle Antworten

  • > Bei Anwendern mit IE8 tritt allerdings (etwa 50% unserer Anwender berichten davon) das Problem auf, dass das neue Fenster im IE geöffnet wird, sich aber dann sofort wieder schließt und kein Download gestartet wird. Auf meinem Rechner habe ich genau das gleiche Problem, selbst bei deaktiviertem Popup-Blocker. Woran kann das liegen? Das muss doch irgendeine Einstellung in den Sicherheitsrichtlinien sein...

    Nein. Das ist ein Popup-Blocker. Aber nicht der im IE.

    --
    Kai


    IEFAQ: http://iefaq.info Newsgroup: microsoft.public.de.internetexplorer
    Donnerstag, 27. Mai 2010 21:42
  • Hi,

    ich habe das selbe Problem. 

    Wir verwenden ein sich durch Javascript öffnendes Popup, welches dann auf eine .ashx zugreift und ein PDF zurück gibt.

    Unter Win 7 IE9 muss der Seite dauerhaft gestattet werden Popups öffnen zu dürfen, damit der PDF Download gestartet wird.

    Unter Win XP und IE8 öffnet und schließt sich das Popup sofort wieder. (Ab und an kann man noch den Ladebalken unten im Fenster erkennen.)
    Mit dem Firefox funktioniert es beim einmaligem Zulassen von Popups... 

    Wenn es ein Popupblocker ist, aber nicht der im IE, welcher sollte es sonst sein? Mir ist nicht bekannt das unsere Anwender noch zusätzliche Popupblocker installiert haben und das Problem tritt eigentlich bei deutlich mehr als 50% unserer Anwender auf. 

     

     

    Freitag, 23. September 2011 12:49
  • Kannst du wohl ein Beispiel zur Verfügung stellen?

    Warum muß dafür ein Popup verwendet werden?

    Wenn es bei einigen Nutzern klappt, bei anderen nicht, dann muß es eine
    Einstellungssache sein oder andere Software. Das beschriebene Verhalten
    ist typisch für bestimmte Popup-Blocker, jedoch nicht für den im IE. Daher
    ist wie schon dem Vorredner geantwortet, der Popup-Blocker im IE praktisch
    ausgeschlossen.
    Wenn es auch kein anderer Popup-Blocker sein kann, dann mag es eine
    Einstellungssache sein (evtl. auch im PDF-Reader) oder ein anderes Add-On
    (IE komplett zurücksetzen). Ad hoc könnte ich aber nicht sagen, an welcher
    Einstellung. Dazu müsste ich das schon mal, möglichst mit Auftreten des
    Fehlers :-), nachvollziehen können.


    IEFAQ: http://iefaq.info
    Freitag, 23. September 2011 21:53
  • Hi,

    ich habe eine Lösung gefunden. Es lag tatsächlich nicht am IE8 Popup-Blocker oder sonst einem Blocker, welcher noch auf dem Rechner installiert war.

    Das ganze Problem scheint mit den Sicherheitseinstellungen im IE8 verankert zu sein. Die entsprechende Domain muss als "Vertrauenswürdige Sites" oder als "Lokales Intranet" eingetragen werden und der Level der Sicherheitsstufe der Zone auf "niedrig" herabgesetzt werden, damit es funktioniert. 

    Welche Einstellung es genau ist werde ich noch evaluieren. 

    Gruß

    Yves

    Montag, 26. September 2011 12:50
  • Hallo!

    Auch ich muss leider genau dieses Problem bestaetigen:
    WinXP mit IE 8: Normale Downloads von Pdf-Dateien sind kein Problem,
    doch wenn die User bestimmte Pdf-Dateien aus einer fremden Datenbank
    (Aufruf über eine JavaScript-Anweisung und Oeffnen eines Popups)
    oeffnen / herunterladen wollen, scheitert dies in fast allen
    (komischerweise nicht in allen?!) Faellen.
    Fremde Popupblocker sind auf den von mir geprueften Geraeten unserer
    Domaenen-User nicht aktiv, auch der Versuch, die Seite in die Liste
    der vertauenswuerdigen Sites aufzunehmen (ohne weitere Anpassung der
    Zoneneinstellung) zeigte leider keinen Erfolg.

    Es scheint immer mehr User mit dem Problem zu geben, welche es noch
    vor kurzem explizit (da Vergleichsuser) nicht hatten.
    Wir haben keine Aenderung der IE-Einstellungen vorgenommen, allerdings
    werden die MS-Patches automatisch verteilt.
    Wie lange das Problem bereits auftritt, ist unklar, da diese Dateien
    nur selten von den Usern abgerufen werden muessen. Dummerweise
    jedoch steht jetzt und am Jahresanfang aber ein vermehrter Zugriff
    bevor, weil nun neue Dokumente fuer User bereitliegen.

    Es liegt der Verdacht nahe, dass wohl ein Patch eingreift, weil die
    Rechner ansonsten weitgehend identisch (zentral) installiert sind
    und keine Änderungen erfolgten (bis auf die Deinstallation einer
    alten PowerAchiver-Version und die Installation von 7-Zip sowie
    die erwähnte MS-Patches).

    Nachdem alle anderen Versuche ohne Erfolg blieben (Popups generell
    zulassen, Aufnahme in die Zone vertrauenswuerdiger Sites, Aktivierung
    des Kompatibilitaetsmodus, Pdf-Anzeige im Browser bzw. nicht im
    Browser), habe ich auf einem betroffenen Rechner den IE8 nach einer
    MS-Anleitung entfernt und neu installiert. Danach klappte es auf
    diesem Testrechner wieder. Das kann ich aber nicht auf zig weiteren
    PCs machen ...

    Der Dienstanbieter auf der anderen Seite sagt natuerlich, dass nur
    wir ein Problem haetten ...

    Ueber weitere Hinweise (was sollte z. B. noch geprueft werden) waere
    ich dankbar!

    Gruesse

    Bernd Leutenecker
    Mittwoch, 23. November 2011 09:24
  • Es bräuchte bitteschön schon die Möglichkeit, das zu reproduzieren, um das
    sinnvoll verfolgen und eine Lösung/Ursache finden zu können.
    "scheitert" ist, wie du, denke ich, sehr gut weißt, auch keine besonders
    gute Problembeschreibung ;-)
    Ist die Option "Verschlüsselte Seiten nicht auf dem Datenträger
    speichern." aktiviert oder deaktiviert?


    IEFAQ: http://iefaq.info
    Mittwoch, 23. November 2011 12:26
  • Hallo!

    'Scheitert' = es tritt das von anderen im Thread geschilderte Problem
    auf, d. h. das Popup-Fenster geht kurz auf und schliesst sich gleich
    wieder (ohne erkennbare Fehlermeldung o. ae.).

    Die - frueher eigentlich empfohlene - Option, verschluesselte Seiten
    nicht lokal zu speichern, ist _nicht_ aktiviert.

    Die Nachpruefung in unserem Fall kann nur erfolgen, wenn man Mitarbeiter(in)
    im oeffentlichen Dienst des Landes Baden-Wuerttemberg ist und ueber
    seine Personalnummer bei der zentralen Stelle seine Gehalts- oder Jahres-
    Steuermitteilung oeffnen/speichern moechte.
    Wie es ansonsten nachgeprueft werden kann, entzieht sich meiner Kenntnis,
    weil dieses Problem ansonsten eben nicht beobachtet wurde.

    Gruss

    Bernd Leutenecker
    Mittwoch, 23. November 2011 12:45
  • Wie gesagt, ohne eine Reproduktionsmöglichkeit sehe ich keine Chance, dem
    nachzugehen. Du kannst dich auch an Microsoft Support wenden, aber die
    werden dasselbe Problem haben, wenn es keine Reproduktionsmöglichkeit
    gibt.
    Ich gehe davon aus, daß es auch mit einem kompletten Zurücksetzen des IE
    versucht wurde?
    Ist es nicht so, daß die neue (leere?) Seite sich sowieso schließen
    sollte?
    Falls dem so ist, aber danach das PDF nicht geladen wird, könnte man
    vermuten, daß sich die Ressourcen in unterschiedlichen Zonen befinden.
    Stelle fest, wie die direkte URL des PDF-Dokuments lautet. Damit kannst du
    das überprüfen.


    IEFAQ: http://iefaq.info
    Mittwoch, 23. November 2011 13:10
  • Hallo!

    Das Zuruecksetzen (aehm, wie waere das schnell zu machen?) habe
    ich insofern bereits gemacht, als dass ich den IE 8 deinstalliert
    und ueber Windows-Update anschliessend wieder installiert habe.
    Wo kann ich ich den Pfad auf die Datei erkennen? Es wird eben nur
    eine JavaScript-Anweisung und eine ID fuer den jeweiligen User
    uebergeben.
    Allerdings habe ich bereits die Domaenen des Anbieters bereits
    in die Liste vertrauenswuerdiger Sites aufgenommen - auch ohne
    Erfolg. Wobei, hm, evtl. habe ich aber auch immer nur eine der
    beiden in Frage kommenden jeweils eingetragen und nicht beide
    parallel. Aber das kann ich in der Tat einmal beim Anbieter
    erfragen.
    Sagen kann ich aber wie die anderen Poster auch bereits, dass
    es mit dem IE 9 und Firefox nicht reproduzierbar ist. Nicht
    getestet habe ich den IE 7 oder 6.

    Gruss

    Bernd Leutenecker
    Mittwoch, 23. November 2011 14:17
  • Das Zuruecksetzen (aehm, wie waere das schnell zu machen?) habe
    ich insofern bereits gemacht, als dass ich den IE 8 deinstalliert
    und ueber Windows-Update anschliessend wieder installiert habe.

    Nein, das ist was anderes, deswegen frage ich ja.
    Teste mal schrittweise:
    1. Internetoptionen, erweitert, dort "komplett zurücksetzen"
    2. und unter Internetoptionen, Sicherheit, alle Zonen noch auf Standard
    zurücksetzen
    3. testweise auch mal eingetragene Sites bei restricted bzw.
    vertrauenswürdigen entfernen (die werden nicht durch das urücksetzen
    entfernt)

    Wo kann ich ich den Pfad auf die Datei erkennen? Es wird eben nur
    eine JavaScript-Anweisung und eine ID fuer den jeweiligen User
    uebergeben.

    Das Script muß eine URL zusammensetzen. Das muß nicht die PDF-Datei selbst
    sein, aber wenigstens die Datei auf dem Server, die dann die Datei
    liefert. Das Script selbst erzeugt die Datei nicht. Außer durch Lesen des
    Sourcecodes läßt sich das nur mit geeigneten Add-Ons erkennen. Für IE
    wüsste ich als kostenloses nur iehttpheaders, für Firefox gäbe es Firebug.
    Wenn du mir irgendwo ein Log zur Verfügung stellen wollen würdest, ginge
    auch HTTPwatch Basic, da ich das was du nicht sehen kannst, im
    eingelesenen Log sehen könnte.

    Kannst du von deiner Warte aus erkennen, wozu überhaupt ein neues Fenster
    geöffnet wird? Meine implizite Frage, ob das in der Tat dann wieder
    geschlossen würde, hast du nicht beantwortet.
    Schau mal in den Registerkarteneinstellungen, was dort für die Popup-
    Öffnung eingestellt ist. Vermutlich "let IE decide". Ändere das mal in
    "immer in neuem Fenster öffnen". Ändert das was?

    Allerdings habe ich bereits die Domaenen des Anbieters bereits
    in die Liste vertrauenswuerdiger Sites aufgenommen - auch ohne
    Erfolg. Wobei, hm, evtl. habe ich aber auch immer nur eine der
    beiden in Frage kommenden jeweils eingetragen und nicht beide
    parallel. Aber das kann ich in der Tat einmal beim Anbieter
    erfragen.

    Teste immer mit der Domain selbst. Also nicht subdomain.example.com,
    sondern example.com

    Sagen kann ich aber wie die anderen Poster auch bereits, dass
    es mit dem IE 9 und Firefox nicht reproduzierbar ist. Nicht
    getestet habe ich den IE 7 oder 6.

    Sollte man auch nicht mehr ;-)


    IEFAQ: http://iefaq.info
    Mittwoch, 23. November 2011 15:12
  • Hallo!

    Die IE-Einstellungen sind weitgehend / komplett unveraendert,
    explizite Zonen sind keine festgelegt, ebensowenig angepasste
    Zoneneinstellungen. Fuer Popups ist die Option 'immer in neuem
    Fenster oeffnen' gewaehlt.
    Aber auch das komplette Zuruecksetzen der Einstellungen bring
    leider keine Besserung.

    Das Popup schliesst sich normalerweise gleich wieder (im IE 9
    und Firefox 8 getestet), wobei eben normalerweise gefragt
    wird, ob und wo man die Datei speichern moechte. Diese Datei
    immer denselben Namen (P_I_SHOWDOK) und das Pdf-Suffix fehlt
    immer wieder.

    Der Aufruf sieht wie folgt aus, die ID des Dokumentes ist
    natuerlich immer unterschiedlich:
    <font class="PortletText1"><a href="javascript:showDok(169892165)" title="Anzeigen"><img class="funktion" src="/images/icon_zoom.gif" alt="Anzeigen">Anzeigen</a></font><font class="PortletText1"> </font>

    Die zugehoerige JS-Datei konnte ich auch laden; dort findet
    sich u. a. diese Angabe:
    function showDok(id) { var elementName = clearDynamicElements() + '_dokid'; inp = document.createElement('input'); inp['name'] = elementName; inp['value'] = id; inp['type'] = 'hidden'; inp.id = 'lbv_kp_dokid'; document.forms[0].appendChild(inp); doEvent(document.forms[0], ''); document.forms[0].removeChild(inp);

    Ich habe einmal sehr oft hintereinander immer wieder auf einen dieser
    Hyperlinks geklickt. Dabei wurde dann tatsaechlich einmal eine
    Hinweiszeile zu den Risiken von Dateien analog jener zum Öffnen
    von Popups am oberen Fensterrand eingeblendet und die Datei konnte
    danach gespeichert werden. Das liess sich bisher jedoch nicht mehr
    reproduzieren (auch nicht nach dem erneuten kompletten Zuruecksetzen).

    Gruss

    Bernd Leutenecker
    Freitag, 25. November 2011 14:26
  • Das Popup schliesst sich
    normalerweise gleich wieder

    Und das hier ist der Knackpunkt ;-) Demnach ist mit Popups alles in
    Ordnung und der Titel oben stimmt nicht. Ob nur für dich oder vielleicht
    auch für deinen Vorredner, weiß ich nicht.

    Das Problem ist jedenfalls nicht das Popup, sondern irgendeine
    Nichtausführung des Scripts darin oder ein anderes Problem.
    Wie gesagt, ohne Reproduktionsmöglichkeit sehe ich da keine Aussicht auf
    Lösung von hier aus.


    IEFAQ: http://iefaq.info
    Donnerstag, 1. Dezember 2011 15:54
  • Hallo!

    Ein kleines Update, nachdem am Freitag-Nachmittag zusammen mit einer
    Mitarbeiterin auf Anbieterseite zahlreiche Tests ueber laengere Zeit
    vorgenommen wurden:
    Es scheint in der Tat nichts (wenig?) mit der Popup-Behandlung des IE8
    zu tun zu haben.
    Die Fehler-Logs auf Serverseite zeigen, dass fuer den Server die Daten
    erfolgreich ausgeliefert wurden; nur wenn es durch haeufiges Anklicken
    in kurzen Intervallen auch Empfaengerseite zu einer Fehlermeldung kam,
    erschien auch ein entsprechender Eintrag auf Serverseite.
    Interessanterweise klappte der Zugriff, die Anzeige zwei Mal auf einem
    weiteren Testrechner, erst danach nicht mehr. Deshalb haben wir uns
    wieder dem Pdf-Viewer zugewandt. Obwohl direkt angebotene Pdf-Dateien
    problemlos heruntergeladen und angezeigt bzw. direkt im Browser
    angezeigt wurden, gibt es in diesem spezielleren Fall offenbar
    Probleme damit; der IE (Windows XP?) hat, so scheint es, ein Problem
    mit den auf diese Weise geladenen Dateien zu haben, kann nichts damit
    anfangen. Erst wenn wir Adobe Reader (bzw. auch Adobe Acrobat auf
    einem der drei Testrechner) dazu brachten, sich offenbar neu dem IE
    bzw. dem System 'bekannt zu machen', klappte die Anzeige dieser
    Pdf-Dateien wieder: Wir haben sehr oft im Reader (bzw. auf einem
    Rechner, auf welchem zusaetzlich Adobe Acrobat, beides in der Version 8,
    installiert ist) das Haekchen zur Anzeige von Pdf-Dateien im Browser
    gesetzt und wieder entfernt, dazwischen den Reader und den Browser
    immer wieder neu gestartet. Erst nach vielen Wiederholungen kam es
    dann dazu, dass im Adobe Reader (wie auch im Acrobat auf einem der
    Rechner) ein Hinweis angezeigt wurde, dass man warten solle, bis die
    Konfiguration des Readers beendet sei - und jeweils danach wurden auf
    den Testrechnern wieder diese ueber ein Script aufgerufenen Pdf-Dateien
    problemlos angezeigt.
    Es steht nun noch der breitere Praxistest auf anderen PCs aus; den
    mache ich aber nur, wenn sich die User mit diesem Problem melden ...

    Danke fuer die vielen Hinweise!

    Bernd Leutenecker
    Sonntag, 4. Dezember 2011 10:20