Archivlink: javarea.de Forum > JavaScript > Mailformular ergänzen
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > Mailformular ergänzen

Pages: [1]

geschrieben von Cluster am 01.08.2005 - 14:30
Ich habe folgendes Script im Einsatz und die farbigen Sachen wurden von mir ergänzt:

HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39: 
40: 
41: 
42: 
43: 
44: 
45: 
<script language="JavaScript">
function bestaetigung() {
var name=document.mailtest.Name.value
var ort=document.mailtest.ort.value
var email= document.mailtest.eMail.value
var Anfrage= document.mailtest.Anfrage.value
var Reaktion= document.mailtest.Reaktion.value
daten="Name: " + name + "\n"
daten=daten + "Ort: " + ort +"\n"
daten=daten + "E-Mail-Adresse: " + email + "\n"
daten=daten + "Anfrage: " + Anfrage + "\n\n"
daten=daten + "Mit der Bitte um: " + Reaktion + "\n"
neu= open("", "anzeige", "width=450,height=320");
ndoc= neu.document;
ndoc.open();
ndoc.write("<html><head><title> Best&auml;tigung</title><body><h1>");
ndoc.write("<p align='center'>Bestätigung");
ndoc.write("<br></font></h1>Bitte überprüfen Sie noch mal Ihre Eingaben:<p>");
ndoc.write("<p align='center'><form action='mailto:buchhaltung@lunos.de?subject=Anfrage-Formular vom FestTiger' method='post' enctype='text/plain'><textarea name='Datenfeld' rows=10 cols=50>");
ndoc.write(daten);
ndoc.write("</textarea><br><br><input type='button' onclick='window.close()' value='Abbrechen' style='width:100px;'> ");
ndoc.write("<INPUT type='submit' align = 'MIDDLE' value='Abschicken' style='width:100px;'></form></head><br></body></html>");
}
</script>
  <center>
  <table cellpadding="0" cellspacing="0" width="100%" align="center">
    <tr>
      <td width="100%"><form name="mailtest">
<table width="400" align=center>
<tr><td width="150">Name: </td><td width="250"><input NAME="Name" SIZE="39"></td></tr>
<tr><td width="150">Ort: </td><td width="250"><input NAME="ort" SIZE="39"></td></tr>
<tr><td width="150">E-Mail: </td><td width="250"><input NAME="eMail" SIZE="39"></td></tr>
<tr><td width="150" valign="top">Anfrage:</td><td width="250"><textarea AME="Anfrage" rows="10" cols="39"></textarea></td></tr>
<tr><td width="150" valign="top">Mit der Bitte um:</td><td width="250">
<input type="radio" name="Reaktion" value="rr"> Rückruf<br>
<input type="radio" name="Reaktion" value="ea"> eMail-Antwort<br>
<input type="radio" name="Reaktion" value="ag"> Angebot<br>
<input type="radio" name="Reaktion" value="tv"> Terminvereinbarung<br></td></tr></table>
<p align="center">
<INPUT type=reset value="Löschen" style="width:100px;">
<input type=button onclick="bestaetigung();" value="Voransicht" style="width:100px;">
</form></td>
</tr>
</table>
</script>


Lasse ich mir nun allerdings die Vorschau der abzuschickenden eMail anzeigen, steht hinter "Mit der Bitte um:" nur undefined.

Könnt Ihr mir sagen was ich falsch gemacht habe und mir evtl. eine Lösung des Problems aufzeigen?

VIelen Dank im voraus und ich hoffe auf Eure Hilfe!

geschrieben von sobi am 01.08.2005 - 16:40
Was mir so mit meinem ungeübten Auge sofort auffällt, ist dass bei <textarea> im Body AME steht und nicht NAME

geschrieben von Cluster am 01.08.2005 - 21:03
Ok, das ist ein Schreibfehler hier. Im Script aber an sich ist das richtig eingetragen. Daran kann es also nicht liegen.

Hat jemand anderes noch einen Tip?

Danke im voraus!

geschrieben von René am 01.08.2005 - 22:12

geschrieben von Cluster am 02.08.2005 - 07:50
Vielen, vielen Dank René.



Das Script läuft einwandfrei und wenn ich jetzt noch die value's anpasse dann ist es exakt so, wie ich es haben wollte.


geschrieben von KKS am 15.09.2005 - 09:58
Hallo erstmal.
Ist es eigentlich möglich mit dem onclick() Event mehrere Funktionen nacheinander aufzurufen?
Habe leider noch kein Beispiel dafür gesehen.
Wäre nett, wenn mir da jemand helfen könnte.

Grüße
KKS

geschrieben von Michael am 15.09.2005 - 10:10
HTML-Quelltext
1: 
onclick="func1(); func2(); usw...";


Einfach durch ein Semikolon getrennt...

Oder du machst eine Function, wo die restlichen drinnen stehen

HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
function init() {
  func1();
  func2();
  uws...
}

onclick="init()";

geschrieben von KKS am 15.09.2005 - 10:18
Danke Dir Michael für Deine sehr schnelle Antwort.
Hab meinen Fehler schon gesehen...hab beide Funktionen nicht als Ausdruck gehabt, sondern jede einzeln.
Das mit dem zusammenfassen muss ich mir mal überlegen...lohnt auf jeden Fall bei mehreren.

Eine Frage hätt ich da mal noch.
Ich habe ein Formular und erst wenn alle Felder korrekt ausgefüllt sind, soll sich das Vorschaufenster öffnen.
Dafür hab ich 2 Funktionen. Muß ich dafür eine Bedingung machen? Der onclick() Event macht das leider nicht.

Thx nochmal.

Grüße
KKS

geschrieben von pyscho am 15.09.2005 - 14:32
@KKS
Hi,
das onsubmit= "return deinefunction()" lässt nachdem klicken der Sende - Schaltfläche die Funktion deinefunction() rufen, und je nach Bau des
Funktiones, also hier in dem Fall nach der Kontrolle der Ganzen Felder ob sie gefüllt sind, schickt den Formular an den Empfänger.

Aber ich weiss nicht wie man zum Vorschau nach der Kontrolle gelingt.

Aber es kann sein dass im Javascript teil folgendes stehen kann. Bin mir aber nicht sicher.

Also:
HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
<script language="javascript">
<!--

function deinefunction(){

 // Deine Kontrollen für die Felder ob die gefüllt sind oder ncht.
 // Dann den Wert des return ´s nicht true oder false angeben sondern den namen bzw. den Pfad deiner Datei und
 // dazu gehörige Zielfenster damit es nicht in dem neuen fenster öffnet.

}

//
-->
</script>


Byeee

geschrieben von KKS am 16.09.2005 - 08:05
Danke psycho für Deine Antwort.
Also ich hab 2 Funktionen. Die 1. Funktion ist "checkForm" und die 2. Funktion ist "confirm".
Mit der 1. Funktion werden 3 Felder nach korrekter Eingabe geprüft und falls dies stimmt soll die 2. Funktion "confirm" aufgerufen werden. Diese zeigt in einem neuen Fenster die vorgenommenen Eingaben. Die "confirm" Funktion beinhaltet dann das Versenden der Daten.
Ich habe zurzeit beide Funktionen auf einem onclick() Event, sprich: onclick="return checkForm();confirm();"
Damit erreich ich aber leider nicht das gewünschte Ziel.

Hättest du vielleicht eine Idee, was ich da noch ändern müßte?
Vielen Dank schon mal.

Grüße
KKS

geschrieben von pyscho am 16.09.2005 - 09:51
Hi,

HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
<script language="javascript">
 <!--

  function checkForm
  {
    if(deine_kontrollen_alle_true)
    {
      return confirm();
    }
    else
    {
       return false;
    }
  }

  function confirm()
  {
    // Zeigen der Inhalt eines Dateies
    // Versenden mit der Schalfläschen
  }

 //
 -->
</script>

 // Das onclick bleibt auf der Stelle wo du es haben willst, da du die Funktion checkForm() aufrufen musst.
 // onclick="return checkForm();


Ich habe nicht ausprobiert aber der Gedanke musste es klappen nach dem Schema weil du es beschrieben hast,
Falls die Eingaben aller Felder Korrekt sind dann rufe die 1.Funktion die 2.Funktion auf und zeige den Inhalt der vorgenommenen Eingaben in
einem Fenster etc.

Aber ich werde versuchen es auszuprobieren...
Da ich in der Schule bin kann ich mich nicht auf die Probleme genau konzentrieren, versuche aber in der freien Stunde zu beantworten.

Siehe Anhang!!! so ähnliches kannst du dir mal ansehen.

Danke für alle und vor allem für dich
Byeee

geschrieben von KKS am 19.09.2005 - 08:36
Morgen erstmal.
Danke pyscho für deine Antwort. Ich habs aber nocht nicht so ganz hinbekommen.
Also wenn "checkForm"==True dann soll die Funktion "confirm" aufgerufen werden. Und wenn nicht dann "return checkForm".
Aus Deinem Beispiel wirds mir auch nicht so ganz glasklar.
Könntest mir das vielleicht nochmal erläutern?!?

Grüße
KKS

geschrieben von pyscho am 19.09.2005 - 13:09
Hi,
was ich nur geschrieben habe ist eigentlich die Vorgehensweise zur deinem Problem. Ich mag es die Scripte für andere zu schreiben, aber
da ich kaum Zeit habe ist es schwer. Versuche es dies Hinzubekommen.

1. Die erste Funktion läuft nach dem Klicken und wenn die Angaben Korrekt sind, dann ruft diese Funktion innerhalb der Funktion eine zweite
Funktion auf. Diese Zweite Funktion muss du dann noch ergänzen für die 1. Funktion sonst funktioniert dies nicht.

Ich hoffe das du jetzt im klaren bist ??

Byee
pyscho


Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.