bestimmte dynamisch generierte Formularfelder prüfen
Maik
- javascript
0 eddi
Hallo,
ich stehe vor folgendem Problem:
Es wird (mit PHP) ein Formular erstellt, dass beliebig viele Input-Felder und beliebige Feldnamen und Feldtypen haben kann. Einzelne Felder sind Pflichtfelder, andere sind es nicht. Wie kann ich jetzt die Pflichtfelder als solche markieren, und wie überprüfe ich diese dann. Ich würde gerne eine JavaScript-Funktion verwenden, die nicht dynamisch erzeugt werden muss.
Meine Überlegung war, den Pflichtfeldern eine ID mitzugeben ( z. B. <input type="text" name="xxx" value="" id="pflicht">), die ich später dann mit ...getElementById['pflichtfeld']... abfragen würde:
<script language="JavaScript" type="text/javascript">
<!--
function check_by_id()
{
var elemente = "";
elemente = document.getElementById('pflicht').name;
alert("elemente:" +elemente);
return false;
}
//-->
</script>
</head>
<body>
<form name="survey" action="#" method="POST" onSubmit="check_by_id();">
<input type="text" name="feld1" value="" id="pflicht"><br>
<input type="text" name="feld2" value="" id=""><br>
<input type="text" name="feld3" value="" id=""><br>
<input type="text" name="feld4" value="" id="pflicht"><br><br>
<input type="submit" name="submit" value="submit">
Jedoch funktioniert das vermutlich nur, wenn ich unterschiedliche Ids habe. Ich bin jetzt leider nicht so der JS-Experte. Hat vielleicht jemand eine Idee, wie man das lösen kann.
Vielen Dank.
Gruß
Maik
Hallo,
Es wird (mit PHP) ein Formular erstellt, dass beliebig viele Input-Felder und beliebige Feldnamen und Feldtypen haben kann. Einzelne Felder sind Pflichtfelder, andere sind es nicht. Wie kann ich jetzt die Pflichtfelder als solche markieren, und wie überprüfe ich diese dann. Ich würde gerne eine JavaScript-Funktion verwenden, die nicht dynamisch erzeugt werden muss.
wenn die Felder und deren Anzahl durch PHP bestimmt wird, dann halte ich es für das Beste, daß auch Dein JavaScript dynamisch durch PHP generiert wird.
Meine Überlegung war, den Pflichtfeldern eine ID mitzugeben ( z. B. <input type="text" name="xxx" value="" id="pflicht">), die ich später dann mit ...getElementById['pflichtfeld']... abfragen würde:
Dabei wirst Du nur ein Problem haben: Der Wert eines Attributes vom Typ ID hat dokumentenweit eindutig zu sein. Ein Klasse wäre also (nicht nur) symatisch korrekter. Zu diesem Thema hatte Thomas Meinike mal etwas geschrieben: http://forum.de.selfhtml.org/archiv/2002/12/t31500/#m170452
Mein Weg wäre aber hier etwas anders. Ich würde mittels PHP ein JavaScript-Array erzeugen, welches entweder die Position innerhalb der Ausgabe von getElementsByTagName(), oder aber die vergebenen IDs beinhaltet und in diesem Fall dann doch wieder mit getElementById() darauf zugreifen.
Gruß aus Berlin!
eddi