![]() |
Java Script
Ich verwende um alle Elemente einse Formulars zu durchlaufen den Code
for (var i=0; i<document.drake.elements.length; i++) { document.writeln(i); } Bei mir kommt allerdings die Fehlermeldung documents.formular.elements ist null oder kein Objekt. Ich habe das Formular weiter unten im Quelltext mit <form name="formular"> ... </form> aber richtig definiert. Weiß wer worans liegt? Jak |
soweit ich das erkenne, nennst du dein formular in html "formular", willst aber in js auf ein formular namens "drake" zugreifen. und noch was: nach elements müßtest du doch den namens des formularelementes angeben, dessen länge du auslesen möchtest, oder?
|
Der Namensfehler ist nicht in der html seite drinnen, denn hab ich reingeschusselt.
Wegen elements.length: .length speichert die Anzahl der Einträge in einem Array. Und für den Browser ist elements ein Array in dem alle Formular Felder+Knöpfe gespeichert werden. Was mich stutzig macht ist, daß das selbe Formular auf einer anderen Seite funktioniert. Dort schauts so aus: (Ist ein gräulicher quelltext; Jugendsünde ;)) <script language="JavaScript" type="text/javascript"> <!-- function alle(das,a,b) { var was; if (das==1) was="an_" else if (das==2) was="cc_" else was="bcc_"; for (var i=0; i<document.auswahl.elements.length; i++) { var pos = document.auswahl.elements[i]; if (pos.name.indexOf(was)==0) { pos.checked = true; document.auswahl.elements[i+a].checked = false; document.auswahl.elements[i+b].checked = false; } } window.location.href="#button"; } function adressaten() { var an="", bcc="", cc="", n_an="", n_cc="", n_bcc="", trigger=0; for (var i = 0; i < document.auswahl.elements.length; i++) { var pos=document.auswahl.elements[i]; if ( (pos.name.indexOf('an_')==0) && pos.checked && (an.indexOf(pos.value)==-1)) { if (an == "") { an = document.auswahl.elements[i-1].value; n_an = document.auswahl.elements[i-1].name; } else { an = an + ";" + document.auswahl.elements[i-1].value; n_an = n_an + "; " + document.auswahl.elements[i-1].name; } } if ( (pos.name.indexOf('cc_')==0) && pos.checked && (cc.indexOf(pos.value)==-1)) { if (cc == "") { cc = document.auswahl.elements[i-2].value; n_cc = document.auswahl.elements[i-2].name; } else { cc = cc + ";" + document.auswahl.elements[i-2].value; n_cc = n_cc + "; " + document.auswahl.elements[i-2].name; } } if ( (pos.name.indexOf('bcc_')==0) && pos.checked && (bcc.indexOf(pos.value)==-1)) { if (bcc == "") { bcc = document.auswahl.elements[i-3].value; n_bcc = document.auswahl.elements[i-3].name; } else { bcc = bcc + ";" + document.auswahl.elements[i-3].value; n_bcc = n_bcc + "; " + document.auswahl.elements[i-3].name; } } } e_mail(an, cc, bcc, n_an, n_cc, n_bcc); } function e_mail(an, cc, bcc, n_an, n_cc, n_bcc) { var alles, slash="/"; alles="<form name=\"mail_schicken\" method=\"post\" action=\"mailto:"; if (an != "") alles = alles + an; if (cc != "") alles = alles + "?cc=" + cc; if (bcc != "") alles = alles + "?bcc=" + bcc; alles = alles + "\" enctype=\"text/plain\" "+ "onsubmit=javascript:window.location.href=\"bestae ti/best_all.htm\">"; if (an=="" && cc=="" && bcc=="") alert("Sie haben keine Addressaten ausgewählt, Bitte wählen sie mindestens einen Addressaten aus"); else { document.writeln("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">"); document.writeln(); document.writeln("<html>"); document.writeln("<head>"); document.writeln("<title>"+ "E-Mail Schritt 2"+ "</title>"); document.writeln("</head>"); document.writeln(); document.writeln("<body bgcolor=\"#ff6600\">"); document.write("<a href=\"start.htm\">"); document.write("Name der Seite" + "</a>" ); document.write("/ "+ "<a href=\"an_alle.htm\">"); document.write("E-Mail an alle, Schritt 1"+ "</a>"); document.writeln("/ E-Mail an alle, Schritt 2"); document.writeln(" "); document.writeln(); document.writeln(alles); document.writeln(" <fieldset>"); document.write(" <legend>"); document.writeln("Schritt 2 von 2"+ "</legend>"); document.writeln(" <table align=\"center\">"); document.writeln(" <tr>"); document.write(" <td>An:"); document.writeln("</td>"); document.writeln(" <td>" + n_an+ "</td>"); document.writeln(" </tr><tr>"); document.write(" <td>" + "CC:"); document.writeln("</td>"); document.writeln(" <td>" + n_cc+ "</td>"); document.writeln(" </tr><tr>"); document.write(" <td>"); document.writeln("BCC:</td>"); document.writeln(" <td>" + n_bcc + "</td>"); document.writeln(" </tr><tr>"); document.writeln(" <td colspan=\"2\" align=\"center\">"); document.write(" "<textarea rows=\"12\" cols=\"50\" name=\"a\">"); document.writeln("</textarea></td>"); document.write(" </tr><tr><td>"); document.writeln("</td>"); document.write(" </tr><tr><td>"); document.writeln("</td></tr><tr>"); document.write(" <td colspan=\"2\" align=\"center\">"); document.writeln("<input type=\"submit\" value=\"E-Mail abschicken\"></td>"); document.writeln(" </tr>"); document.writeln(" </table>"); document.writeln(" </fieldset>); document.writeln("</form>"); document.writeln(); document.writeln("</body>"); document.writeln("</html>"); } } // --> </script> |
Fortsetzung:
Das ganze ist in dem obigen Fall ein Mailformular. edit: das ganze geht dann so weiter </head> <body bgcolor="#ff6600"> Name der Seite / E-Mail an alle, Schritt 1 <div align="center"> <h1>E-Mail an Mitglieder</h1> <form name="auswahl" method="POST" action="javascript:adressaten()"> <fieldset name="b"> <legend>Schritt 1 von 2</legend> <table border style="border-style:solid; border-width:thin"> <tr> <th>An</th><th>CC:</th><th>BCC:</th><th>Name</th><th>E-Mail Adresse</th> </tr><tr> </tr><tr> <td><input type="button" name="alle_an" value="Alle" OnClick="alle(1,1,2)"></td> <td><input type="button" name="alle_cc" value="Alle" OnClick="alle(2,1,-1)"></td> <td><input type="button" name="alle_bcc" value="Alle" OnClick="alle(3,-1,-2)"></td> <td></td><td></td> </tr><tr> <td><input type="hidden" name="Name" value="erste@emailadresse"> <input type="checkbox" name="an_Name"></td> <td><input type="checkbox" name="cc_Name"></td> <td><input type="checkbox" name="bcc_Name"></td> <td>Name</td> <td>erste@emailadresse</td> </tr> usw. </table> </body> </html> P.S.: Wenn du zu dem zweiten Script einen Verbesserungsvorschlag hast, nur zu! Jak |
*schnarch*
sorry, bin schon beim 1. teil eingeschlafen. :D
der html-qt ist winwordgeneriert, oder? |
Der Code hätte dorthin gehört: http://www.wcm.at/vb2/showthread.php?s=&threadid=32227 ;)
|
oh ja
winword-qt oder schafe zählen, beides hilft, man schläft garantiert ein.
|
Sorry. Ist veilleicht doch etwas trocken geworden.
@Rastlin Majere: Nope. Wordpad rult! ;) Zum Fehlersuchen habe ich dann aber 1stpage verwendet. Im Editor war mir das dann doch zu blöd. Jak |
Alle Zeitangaben in WEZ +2. Es ist jetzt 21:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag