Auslesen von input-felder mit variable
Marc
- javascript
0 Marc0 Tobias Kloth0 Rayd3n0 Tobias Kloth0 wahsaga
Hallo
in meinem Formular gibt es mehrere Felder à la:
<input type="text" name="feld_1_name">
<input type="text" name="feld_2_name">
<input type="text" name="feld_3_name">
die Zahlen werden dabei vom php Script fortlaufend verteilt.
nun habe ich eine javascript Funktion, die die Zahl aufnimmt und weiter verabeitet, geht bis dahin auch wunderbar.
function window(i) {
}
aber wie bekomm ich jetzt den value von dem feld_i_name aus dem js angesprochen?
document.formular.feld_i_name.value geht nicht
document.formular.feld_[i]_name.value geht nicht
'document.formular.feld'+i+'name.value' geht nicht
etc...
man sieht, ich hab nicht wirklich Ahnung und die Antwort wird sicherlich simpel sein, aber ich komm nunmal nicht drauf :(
Marc
okay. habs gefunden
c=eval('document.formular.feld'+i+'name.value');
ging wohl doch, nur anders. ich sag ja: simpel :)
Hallo Marc,
aber wie bekomm ich jetzt den value von dem feld_i_name aus dem js angesprochen?
mit hilfe von elements[]:
document.formular.elements['feld_'+i+'_name'].value
siehe auch http://selfhtml.teamone.de/javascript/objekte/elements.htm#allgemeines.
Grüße aus Nürnberg
Tobias
Geht auch einfacher:
statt >document.formular.feld_i_name.value<
mach einfach >document.getElementById("feld"+i+"name").value<
Hallo,
statt >document.formular.feld_i_name.value<
mach einfach >document.getElementById("feld"+i+"name").value<
das geht aber nur, wenn das Feld ein id-Attribut hat - was aber im Code von Marc nicht so war (ja, ich weiß, der IE macht das, obwohl es falsch ist, trotzdem) - wenn schon dann document.getElementsByName('feld'+i+'name').value.
Grüße aus Nürnberg
Tobias
hi,
wenn schon dann document.getElementsByName('feld'+i+'name').value.
wenn man mit "wenn schon, dann ..." sprüchen kommt, dann sollte man auch wenigstens 100%ig korrekten code posten ;-)
da der name nicht dokumentweit eindeutig sein muss, sondern mehrfach vorkommen kann, liefert getElementsByName _immer_ ein array zurück, so dass auch noch der array-index beim zugriff angegeben werden muss.
also, "wenn schon, dann":
document.getElementsByName('feld'+i+'name')[x].value
wobei x die gültige nummer eines elementes mit dem feldnamen 'feld'+i+'name' ist - wenn es nur ein solches gibt, dann _muss_ auch hier trotzdem mit dem array-index 0 zugegriffen werden.
gruss,
wahsaga
Hallo wahsaga,
wenn schon dann document.getElementsByName('feld'+i+'name').value.
wenn man mit "wenn schon, dann ..." sprüchen kommt, dann sollte man auch wenigstens 100%ig korrekten code posten ;-)
da der name nicht dokumentweit eindeutig sein muss, sondern mehrfach vorkommen kann, liefert getElementsByName _immer_ ein array zurück, so dass auch noch der array-index beim zugriff angegeben werden muss.
uups, du hast natürlich recht, danke fürs korrigieren. An das 's' hinter 'Element' habe ich noch gedacht, nur and das '[0]' nicht mehr :-)
Grüße aus Nürnberg
Tobias