eric: Dynamisch erzeugte Eingabefelder überprüfen.

Hi @all,
habe folgendes Problem:
Ich generiere auf einer seite mittels php mehrere Eingabefelder welche alle den selben namen + [] (also "<input type='text' name='name[]'>") tragen.
Mit php kann ich diese Felder, nach dem verschicken, einfach als array in einer schleife weiterverarbeiten (über "name[$var]").
Vorher jedoch möchte ich, mittels JavaScript, die Eingaben überprüfen und scheitere daran kläglich. Es funktioniert kein zugriff über "document.FormName.name[i].value".

Nun weiss ich nicht mehr weiter!

Hoffe jemand hat eine Lösung.

eric

  1. Hallo.

    Ich generiere auf einer seite mittels php mehrere Eingabefelder welche alle den selben namen + [] (also "<input type='text' name='name[]'>") tragen.

    http://selfhtml.teamone.de/javascript/sprache/regeln.htm#namen

    Mit php kann ich diese Felder, nach dem verschicken, einfach als array in einer schleife weiterverarbeiten (über "name[$var]").
    Vorher jedoch möchte ich, mittels JavaScript, die Eingaben überprüfen und scheitere daran kläglich. Es funktioniert kein zugriff über "document.FormName.name[i].value".

    Kann ja auch nich, weil [ und ] Operatoren sind.

    Nun weiss ich nicht mehr weiter!
    Hoffe jemand hat eine Lösung.

    Du kannst die Formular-Elemente auch über elements[#] (http://selfhtml.teamone.de/javascript/objekte/elements.htm#allgemeines) ansprechen. Musst nur wissen, was textfeld ist und was nich, also ungefähr so:

    <html><head><title></title>
    <script type="text/javascript">
    <!--
     function f()
      {
       c = "";
       for(i = 0; i < document.form.elements.length; i++)
        {
         if(document.form.elements[i].type == "text"){c+=document.form.elements[i].value + "\n"}
        }
       window.alert(c);
      }
    //-->
    </script>
    </head><body>
    <form name="form" action="javascript:f()">
    <input type="text" value="1. Wert"><br>
    <input type="text" value="2. Wert"><br>
    <input type="text" value="3. Wert"><br>
    <input type="submit">
    </form></body></html>

    Gruß
    Norbert