michael80: Formular+Felder

Hallo Leute

Ich habe ein kleines Problem

Ich habe ein Formular, wo man Nameneingeben kann...
---
<form name="formular1">
...
<input type="text" name="man[0]" value = "Name 1" size="30"><br>
<input type="text" name="man[1]" value = "Name 2" size="30"><br>
<input type="text" name="man[2]" value = "Name 3" size="30"><br>
<input type="text" name="man[3]" value = "Name 4" size="30"><br>
...
</form>
--

Diese Inhalte wollte ich über ein JavaScript in einem Array einlesen lassen - also so,:

--
var man = new Array(4);
 for (var i=0; i<4; i++){
  man[i] = document.formular1.man[i].value;
 }
--

um sie später (leicht veränder) wieder in einem Textfeld auszugeben.
Leider funktioniert das nicht :-(

Wenn ich es mit einer ganz normalen Variable mache:

<input type="text" name="test" value = "TEST" size="30">
und
test = document.formular1.test.value;

Kann ich sie später wieder auslesen/anzeigen lassen.

Frage nun: Was ist falsch bzw. ist es überhaupt möglich dies mit einem Feld zumachen?

Beste Grüße Micha

  1. Hallo Leute

    man[i] = document.formular1.man[i].value;

    Salut
    Das da oben heisst:
    Array man mit Index i = bekommt den wert von Array man mit index i
    Und was genau erwartest du von so einem Gebilde?
    1=1 Passiert da was?

    Du hast alle werte bereits in einem Array, nämlich dem Array man.

    Gruss
    Schorsch

    1. Du hast alle werte bereits in einem Array, nämlich dem Array man.

      ähh... nein. Quatsch.
      Sorry Schorsch

  2. Hallo Michael,

    <input type="text" name="man[0]" value = "Name 1" size="30"><br>
    <input type="text" name="man[1]" value = "Name 2" size="30"><br>
    <input type="text" name="man[2]" value = "Name 3" size="30"><br>
    <input type="text" name="man[3]" value = "Name 4" size="30"><br>

    Hierdurch erzeugst Du aber kein Javascriptarray namens man.

    var man = new Array(4);
    for (var i=0; i<4; i++){
      man[i] = document.formular1.man[i].value;

    man[i] = document.formular1.elements["man[" + i + "]"].value;

    oder
    <input type="text" name="man0" value = "Name 1" size="30"><br>
    man[i] = document.formular1.elements["man" + i].value;

    Grüße
    Andreas

    --
    "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning."
    (Rich Cook)
    1. Hierdurch erzeugst Du aber kein Javascriptarray namens man.

      Das war ja auch mein Problem..

      <input type="text" name="man0" value = "Name 1" size="30"><br>
      man[i] = document.formular1.elements["man" + i].value;

      Hey, genau dat ist es, was ich benötigt habe - besten Dank!!!

      Michael