Formular auswerten und per Mail verschicken

Stelo

Erfahrenes Mitglied
Hallo ... ich möchte ein Formular mit JavaScript überprüfen, d.h. kontrollieren, ob alle Felder ausgefüllt werden und wenn das der Fall ist, es dann abzuschicken.
Mein JavaScript Teil sieht so aus:

Code:
function check () {
 if (document.kontakt.name.value == '') {
          alert('Bitte einen Namen eingeben.');
             return false;
            }
         if (document.kontakt.mail.value == '') {
          alert('Bitte eine E-Mail-Adresse eingeben.');
             return false;
            }
         if (document.kontakt.nachricht.value == '') {
          alert('Bitte eine Nachricht eingeben.');
             return false;
            }
         return true;
}

Funktioniert auch, doch wenn sich dann das Mail-Programm öffnet steht in der Mail:
name=Steff&mail=bla%40web.de&grund=frage&nachricht=Warum+geht+das+nicht%3F&Abschicken=abschicken

Wie kann ich denn dafür sorgen, dass die Mail mit richtigen Inhalt gefüllt wird?
Und wie das mit PHP gehen würde ist mir bewusst, aber ich muss leider mit JS arbeiten.
 
Zuletzt bearbeitet:
Mein Form-Tag sieht so aus:

HTML:
<form name="kontakt" action="mailto:lorenz.stefanie@googlemail.com" onsubmit="return check()" method="post">
 
Versuche mal GET statt POST zu verwenden. Wenn das nicht klappt:

Schau dir mal SELFHTML-Link den ich oben gepostet habe genau an, dann kannst du dir ein Javascript schreiben, dass die Inhalte deiner Formularfeld entsprechend in einen Mailto-Link schreibt und aufruft.

Ungefähr so:
HTML:
Betreff: <intput type="text" id="betreffId"/> <br />

<input type="button" value="Mailprogramm öffnen!" onclick="
    window.location.href = 'mailto:a.b@c.de?subject='+ document.getElementById('betreffId').value;
" />
 
Versuche mal GET statt POST zu verwenden. Wenn das nicht klappt:

Schau dir mal SELFHTML-Link den ich oben gepostet habe genau an, dann kannst du dir ein Javascript schreiben, dass die Inhalte deiner Formularfeld entsprechend in einen Mailto-Link schreibt und aufruft.

Ungefähr so:
HTML:
Betreff: <intput type="text" id="betreffId"/> <br />

<input type="button" value="Mailprogramm öffnen!" onclick="
    window.location.href = 'mailto:a.b@c.de?subject='+ document.getElementById('betreffId').value;
" />
Also wenn ich GET verwende, geht gar nichts.

Hmmm ... das was du da gepostet hat, versteh ich allerdings nicht ganz ... so wie ich das interpretiere, müsste ich ja dann neben jedes Formularfeld so einen Button machen?! :confused:
 
Die eigentliche Frage, die sich erstmal stellt, ist, ob du aktiviertes JS als gegeben ansehen kannst.
Wenn nicht, besteht bei jeder JS-Lösung die Gefahr, dass User ohne JS ausgeschlossen werden.....prinzipiell ist es nämlich so, dass du ein Eingabefeld namens "body" bräuchtest...und nur dessen Inhalt gelangt in den Nachrichtentext. Mehrere Eingabefelder sind dort nicht möglich, ohne sich mit JS zu behelfen.
 
Du brauchst nicht für jedes Formularfeld einen Button, denn du kannst einen Button für alle Felder auf einmal nehmen. Musst halt ensprechend die values der einzelnen Felder in den "mailto:a.b@c.de....usw...." integrieren.
 

Neue Beiträge

Zurück