Discussion:
Neues Fenster mit Response.Redirect(); öffnen???
(zu alt für eine Antwort)
Tobias Auras
2006-11-06 09:08:25 UTC
Permalink
Hallo NG,

gibt es eine Möglichkeit über die Methode Redirect(); ein neues
Browserfenster zu öffnen?

Es geht um folgendes:
Ich habe auf einer Seite einige Buttons, bei einem bestimmten soll sich ein
neues Fenster öffnen. Meine erste Idee war da natürlich über einen Event,
der ein Response.Redirect(); auslöst, allerdings weiss ich nicht, ob es
damit überhaupt möglich ist.

Die Seite die im neuen Fenster angezeigt wird befindet sich auf dem selben
Server, wie die Seite von der aus man dort hingelangt.

Gibt es da eine (reine ASP-) Lösung, sodass ich weiterhin den Button
benutzen kann?

Gruß
Tobias
Tobias Auras
2006-11-06 09:46:26 UTC
Permalink
Also das alte Fenster soll noch geöffnet bleiben, es soll sich quasi ein
Pop-Up-Fenster öffnen.
Post by Tobias Auras
Hallo NG,
gibt es eine Möglichkeit über die Methode Redirect(); ein neues
Browserfenster zu öffnen?
Ich habe auf einer Seite einige Buttons, bei einem bestimmten soll sich
ein neues Fenster öffnen. Meine erste Idee war da natürlich über einen
Event, der ein Response.Redirect(); auslöst, allerdings weiss ich nicht,
ob es damit überhaupt möglich ist.
Die Seite die im neuen Fenster angezeigt wird befindet sich auf dem selben
Server, wie die Seite von der aus man dort hingelangt.
Gibt es da eine (reine ASP-) Lösung, sodass ich weiterhin den Button
benutzen kann?
Gruß
Tobias
Peter Bucher
2006-11-06 10:40:41 UTC
Permalink
Hallo Tobias
Post by Tobias Auras
Also das alte Fenster soll noch geöffnet bleiben, es soll sich quasi ein
Pop-Up-Fenster öffnen.
Response.Redirect ist hier mehr als falsch am Platz,
das hat nichts mit dem Client zu tun.

Javascript ist für dich das richtige:
- http://de.selfhtml.org/javascript/objekte/window.htm#open


Gruss Peter
Tobias Auras
2006-11-06 11:09:38 UTC
Permalink
Post by Peter Bucher
Response.Redirect ist hier mehr als falsch am Platz,
das hat nichts mit dem Client zu tun.
- http://de.selfhtml.org/javascript/objekte/window.htm#open
Hallo Peter,

danke für deine Antwort.

Wenn ich einen normalen Link nehmen würde, könnte ich ja target="_blank"
setzen, dann würde er mir ja auch ein zusätzliches Fenster öffnen.

Aus design-technischen Gründen würde ich aber gerne an dem Button
festhalten, aber die Funktionalität eines einfachen Linkes mit
_blank-Verweis nutzen.

Gibt es da vielleicht nicht doch irgendwie die Möglichkeit das Klicken eines
Linkes zu "simulieren", so dass ich doch ohne Javascript auskomme?

Gruß
Tobias
Patrick Finger
2006-11-06 11:54:35 UTC
Permalink
hallo
Post by Tobias Auras
Gibt es da vielleicht nicht doch irgendwie die Möglichkeit das Klicken eines
Linkes zu "simulieren", so dass ich doch ohne Javascript auskomme?
Nein gibts nicht- zumindest hab ich nichts derartiges gefunden nachdem
ich mich vor gut 2 Wochen einen ganzten Tag mit der Thematik beschäftigt
habe.

Das verwendete javascript ist minimal und genau für Deinen
Anwendungszweck. Ausserdem gehört eingeschaltetes javascript inzwischen
zur Grundkonfiguration jedes Browsers.

Ich setze das Script mittels nachfolgendem Code direkt in der
Code-Behind-Classe auf den Button:

this.btn_email.Attributes.Add("onclick",
"window.open('PasswortVersandEmailWizzard.aspx?account="
+ (MyUser != null ? MyUser.NTAccount : "")
+ "','','width=600,height=450,left=100,top=100')");


Gruss
Gerold Mittelstädt
2006-11-06 16:49:22 UTC
Permalink
Hallo Tobias,
Post by Tobias Auras
Aus design-technischen Gründen würde ich aber gerne an dem Button
festhalten, aber die Funktionalität eines einfachen Linkes mit
_blank-Verweis nutzen.
Bedenke, dass einige Browser auch Registrierkarten Anstelle von neuen
Fenstern öffnen.

Viele Grüße!
--
Richtiges Kopieren vom Visual Studio nach Outlook Express:
Code auswählen -> Strg+C -> Notepad -> Strg+V -> Strg+A -> Strg+X -> OE
-> Strg+V
Mähr Stefan
2006-11-06 15:44:18 UTC
Permalink
Auch ne elegante Möglichkeit ein Popup vom Codebehind aus zu öffnen is
folgender
Response.Write("<script>window.open('meine neue URL');</script>")

Lg

Stefan
Post by Tobias Auras
Hallo NG,
gibt es eine Möglichkeit über die Methode Redirect(); ein neues
Browserfenster zu öffnen?
Ich habe auf einer Seite einige Buttons, bei einem bestimmten soll sich
ein neues Fenster öffnen. Meine erste Idee war da natürlich über einen
Event, der ein Response.Redirect(); auslöst, allerdings weiss ich nicht,
ob es damit überhaupt möglich ist.
Die Seite die im neuen Fenster angezeigt wird befindet sich auf dem selben
Server, wie die Seite von der aus man dort hingelangt.
Gibt es da eine (reine ASP-) Lösung, sodass ich weiterhin den Button
benutzen kann?
Gruß
Tobias
Gerold Mittelstädt
2006-11-06 17:59:28 UTC
Permalink
Hallo Stefan,
Post by Mähr Stefan
Auch ne elegante Möglichkeit ein Popup vom Codebehind aus zu öffnen is
folgender
Response.Write("<script>window.open('meine neue URL');</script>")
Da kannst Du Dir aber zu 99% sicher sein, dass das an nem Popup-Blocker
hängen bleibt.



Viele Grüße!
Tobias Auras
2006-11-13 07:22:20 UTC
Permalink
Vielen Dank für Tipps.

Das Ding bleibt nicht nur am Pop-Up-Blocker hängen, denn wenn es das tut,
zerschießt es mir auch das komplette CSS... Bleibt einem wohl nurnoch die
Möglichkeit einen Hyperlink mit Bild eines Buttons zu benutzen, solange man
nicht drauf klickt merkt man den Unterschied nicht ;).

Gruß
Tobias
Gerold Mittelstädt
2006-11-14 12:30:30 UTC
Permalink
Hallo Tobias,
Post by Tobias Auras
Vielen Dank für Tipps.
Das Ding bleibt nicht nur am Pop-Up-Blocker hängen, denn wenn es das
tut, zerschießt es mir auch das komplette CSS... Bleibt einem wohl
nurnoch die Möglichkeit einen Hyperlink mit Bild eines Buttons zu
benutzen, solange man nicht drauf klickt merkt man den Unterschied
nicht ;).
Und welchen willste nehmen? Windows Classic, Luna Theme, Vista, Linux?

<input type="submit" onclick="window.open(...);"/>

Viele Grüße!
--
Richtiges Kopieren vom Visual Studio nach Outlook Express:
Code auswählen -> Strg+C -> Notepad -> Strg+V -> Strg+A -> Strg+X -> OE
-> Strg+V
Loading...