CGI-Script mit JS ansteuern
Rapsli
Hallo, ich bin es wieder einmal. Mein Problem ist immer noch nicht gelöst. Ich werde jetzt eine Detailliert Problemstellung machen und hoffe schwer, dass mir jemand helfen kann.
Hier wäre ein Ausschnitt aus dem Quelltext wie es ungefähr aussehen sollte:
<html>
<head>
<script language="JavaScript">
function send()
{
..............
}
</script>
</head>
<body>
<form method="post" action="http://www.is-fun.net/cgibin/feedbackx.cgi)">
<input type="text" name="hallo">
<input type="button" value="send" onClick="send()">
</form>
</body>
</html>
Mein Problem ist jetzt eigentlich ganz simpel. Ich möchte das Mail nicht wie normal über das action="..." schicken, sonder über ein JS darauf zugreifen. Falls das Problem immer noch nicht klar ist bitte nochmals fragen.
Antwort falls möglich mit kleinem Bsp, erörtern.
Vielen Dank
Rapsli
function send()
»» {
..............
»» }
</script>
</head>
<body>
<form method="post" action="http://www.is-fun.net/cgibin/feedbackx.cgi)">
<input type="text" name="hallo">
<input type="button" value="send" onClick="send()">
Hi Rapsli!
Was genau willst Du tun...? a) Vor Abschicken der Mail erst ein JavaScript aufrufen,
welches z.B. Eingabeüberprüfungen macht? Oder b) soll das JavaScript die Daten selber
umformatieren und als Mail irgendwohin schicken?
Im ersteren Fall geht das mit
<form method="post" action="http://my.url.com/cgi/feedback.pl" onSubmit="send()">
...
...
</form>
Bevor nun das Formular abgeschickt wird, wird zunächst die JavaScript-Funktion send()
aufgerufen, die nun z.B. Eingabefelder überprüfen kann.
Wichtig ist hierbei der Return-Wert von send():
return false; sorgt dafür, daß das Formular *nicht* abgesendet wird (z.B.
bei Eingabefehlern), mit
return true; wird das Formular dagegen abgeschickt.
<am Rande>
Da jeder User JS einfach abschalten kann, ist eine Eingabeüberprüfung
in einem CGI-Skript natürlich wirkungsvoller...
</am Rande>
im zweiten Fall muß ich momentan passen.
Mir ist außerdem nicht 100%ig
klar, was das JavaScript nun tatsächlich mit dem Formular tun soll, da Du
in Deinem Beispiel ja zusätzlich auch noch ein CGI-Skript
mit den Daten aufrufst.
Viele Grüße!
Andreas
Ich habe gemerkt, ich kann mich noch präzisieren. Ich möchte, dass es bei jedem Aufruf meiner Seite mir per CGI-script ein Mail schickt. Sag mir bitte nicht, ich solle einen Counter brauchen, denn das haben schon andere gesagt.
Rapsli
Hi Rapsli!
Was genau willst Du tun...? a) Vor Abschicken der Mail erst ein JavaScript aufrufen,
welches z.B. Eingabeüberprüfungen macht? Oder b) soll das JavaScript die Daten selber
umformatieren und als Mail irgendwohin schicken?
Im ersteren Fall geht das mit<form method="post" action="http://my.url.com/cgi/feedback.pl" onSubmit="send()">
...
...
</form>Bevor nun das Formular abgeschickt wird, wird zunächst die JavaScript-Funktion send()
aufgerufen, die nun z.B. Eingabefelder überprüfen kann.
Wichtig ist hierbei der Return-Wert von send():return false; sorgt dafür, daß das Formular *nicht* abgesendet wird (z.B.
bei Eingabefehlern), mit
return true; wird das Formular dagegen abgeschickt.<am Rande>
Da jeder User JS einfach abschalten kann, ist eine Eingabeüberprüfung
in einem CGI-Skript natürlich wirkungsvoller...
</am Rande>im zweiten Fall muß ich momentan passen.
Mir ist außerdem nicht 100%ig
klar, was das JavaScript nun tatsächlich mit dem Formular tun soll, da Du
in Deinem Beispiel ja zusätzlich auch noch ein CGI-Skript
mit den Daten aufrufst.Viele Grüße!
Andreas
Hi,
schreibe in den Body-Tag onLoad=document.forms[0].submit()
Cheatah