Forum Doku Wiki Blog

Forumsarchiv 2002, April
FORM ACTION -> Popup öffnen und Aussehen bestimmen

archivierte Beiträge lesen

  1. (JAVASCRIPT) FORM ACTION -> Popup öffnen und Aussehen bestimmen von Björn, 22. 04. 2002, 11:32

FORM ACTION -> Popup öffnen und Aussehen bestimmen

Der folgende Beitrag wurde am 22. 04. 2002, 11:32 Uhr von Björn veröffentlicht.

Hallo!
Ich bin leider mit meinem Problem immer noch nicht weiter. Es geht darum:

Ich habe eine ganz normale HTML-Datei mit einem Voting-Formular. Drückt man den Send-Button soll sich ein kleines Popup öffnen, in dem das Ergebnis gezeigt wird. Das Popup soll aber eine bestimmte Größe haben und es soll keine Elemente (Scrollbar, Toolbar, etc.) enthalten. Das bekomme ich leider nicht hin. Ich habe bis jetzt Folgendes versucht:

1. In der <form action=... einen target="popup" Befehl. Dann im Popup Quellcode ein <body onLoad=resize.TO(xxx,yyy)>. Damit bekomme ich aber die störenden Elemente nicht weg.

2. Ich habe ein Java-Script verwendet:
function vote(name) {
 msgWindow=open(name,'vote','history=no,toolbar=no,scrollbars=no,width=300,height=210')
}

Und das zusammen mit der <form action> verwendet. Nämlich so:
<form action="JavaScript:vote('http://www.test.de/cgi-bin/popup.cgi')" method="post">

Das funktioniert sogar, leider gehen mir aber so die Inhalte der voting-Variable verloren -> kein Voting möglich.

Zusammenfassung:
Unter 1. bekomme ich das Voting hin, aber nicht das benötigte Layout des Popups.
Unter 2. siehts gut aus, aber das Voting geht nicht mehr.

Wer kann mir Tipps geben oder gar helfen?

Vielen Dank!
B.

FORM ACTION -> Popup öffnen und Aussehen bestimmen

Der folgende Beitrag wurde am 22. 04. 2002, 13:47 Uhr von Ramy veröffentlicht.

Hallo Björn

> function vote(name) {
> msgWindow=open(name,'vote','history=no,toolbar=no,scrollbars=no,width=300,height=210')
> }

Um ein neues Fenster zu öffnen, wird drei Parameter erwartet.

function vote(name)
{
   msgWindow=open
  ("URL","vote","history=no,toolbar=no,scrollbars=no,
   width=300,height=210")
}
Du musst alle Parametern zwischen doppelten Hochkomma und ohne Abstand.

URL kann z.B. newWindow.htm sein.
hoffe damit geholfen zuhaben
gruss
Ramy

FORM ACTION -> Popup öffnen und Aussehen bestimmen

Der folgende Beitrag wurde am 22. 04. 2002, 14:19 Uhr von Björn veröffentlicht.

Vielen Dank, aber das geht ja leider nicht, weil ich ja ein cgi anspreche und keine html Datei.


> function vote(name)
> {
>    msgWindow=open
>   ("URL","vote","history=no,toolbar=no,scrollbars=no,
>    width=300,height=210")
> }
> Du musst alle Parametern zwischen doppelten Hochkomma und ohne Abstand.

> URL kann z.B. newWindow.htm sein.


...in diesem Fall müßte ich ja ein festes Ziel angeben. Aber es soll ja beim Absenden des Formulars, das cgi (die form action) im neuen Popup geöffnet werden. Irgendwie klappts nicht, wer kann noch helfen???

FORM ACTION -> Popup öffnen und Aussehen bestimmen

Der folgende Beitrag wurde am 22. 04. 2002, 16:00 Uhr von Sven Rautenberg veröffentlicht.

Moin!

Das mit den Formularen, deren Absendeverhalten, und der Verbindung zu Javascript läuft folgendermaßen:

Ausgangspunkt: Ein Formular ist bereits im Browser in einem Fenster (egal wie das entstanden ist) geladen. Es wird ausgefüllt.

Beim Klicken auf den Submit-Button wird die dort onclick ausgelöst. Weiterhin wird (ob davor oder danach, kann ich nicht auswendig sagen, Vermutung: danach) onsubmit im <form> ausgelöst, wenn ein Submit-Button oder die Methode submit() des Formulars benutzt wird.

Damit existieren zwei Ansatzpunkte, vor dem Absenden des Formulars Dinge zu erledigen.

Erst wenn onsubmit "true" zurückgegeben hat, wird das Formular abgeschickt. Dies geschieht vollkommen außerhalb des Einflußbereichst von Javascript, indem der Browser einfach eine neue Datei vom Server anfordert. Diese Anforderung geschieht wahlweise mit den HTTP-Methoden GET oder POST, wobei GET auch für die ganz normale Seitenanforderung benutzt wird (bei Formularen werden die Daten an die URL drangehängt - die bekannten Parameter eben), während POST die Daten fürs menschliche Auge unsichtbar mitschickt. Resultat in beiden Fällen: Der Browser schickt eine Seite zurück, die in deinem Fall schon im korrekt formatierten Fenster erscheinen soll.

Folglich ist es notwendig, das Fenster vor dem Abschicken des Formulars zu erzeugen (mit window.open), und dann mit target im <form> die vom Server zurückgeschickte Datei dorthinein zu leiten.

Wann du mit Javascript eingreifen kannst, ist dir jetzt bekannt. Wie du mit window.open den "HTML-Namen" für target setzen kannst, auch (ansonsten schau in SelfHTML nach). Daß du noch eine passende Zwischendatei brauchen könntest, welche direkt nach dem Öffnen des Popups geladen wird, bevor die Voting-Auswertung kommt, sei hier erwähnt.

 - Sven Rautenberg

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4