Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 1999 Teil von April

SELFHTML Forumsarchiv
elements[i].name.value?

Informationsseite
  1. Seite (JAVASCRIPT) elements[i].name.value? von Oliver Kurlvink, 29. 04. 1999, 19:51
nach unten

elements[i].name.value?

Die folgende Nachricht zum Thema stammt von: Oliver Kurlvink, 29. 04. 1999, 19:51

hi :)

Ich hänge hier mittlerweile seit Stunden an einem Javascript-Problem fest: Ich habe zwei Formulare in zwei Frames mit den gleichen Form-Elementen, welche auch die gleichen Namen haben. Das erste Formular ist HTMl, das zweite wird per PHP aus einer Datenbank gemacht und mit den in der Datenbank gespeicherter Werten gefüllt. Jetzt sollen diese Werte in das formular im oberen Frame eingesetzt werden. Dazu verwende ich folgende Funktion:

function plopp() {
number = top.form.document.Bestand1.elements.length; top.zurueck.document.zurueckform.datumuhrzeit.value = number;
var i = 0;
while(i < number) {
if (top.form.document.Bestand1.elements[i].type != 'button') {
name=top.form.document.Bestand1.elements[i].name;
top.form.document.Bestand1.name.value = top.php3.document.hiddenform.name.value;
}
i++;
}
}

Grundidee ist folgende: Die Anzahl von Elementen wird ausgelesen und dann jedes dieser elemente von oben nach unten durchgegangen. Der Name des elementes wird in name gespeichert. Dann soll formularname.elementname.elementwert vom einem ins andere Dokument verschoben werden. Das klappt aber nicht, da
top.php3.document.hiddenform.name.value;
nicht den Namen des aktuellen Elements einsetzt, sondern halt nur "name". Wie kann ich erreichen, daß dort der Name des aktuellen Elements eingesetzt wird??

nach obennach unten

elements[i].name.value?

Die folgende Nachricht zum Thema stammt von: Andreas Bierhals, 29. 04. 1999, 23:24

Hallo Oliver!

»» Grundidee ist folgende: Die Anzahl von Elementen wird ausgelesen und dann jedes dieser elemente von oben nach unten durchgegangen. Der Name des elementes wird in name gespeichert. Dann soll formularname.elementname.elementwert vom einem ins andere Dokument verschoben werden. Das klappt aber nicht, da
»» top.php3.document.hiddenform.name.value;
»» nicht den Namen des aktuellen Elements einsetzt, sondern halt nur "name". Wie kann ich erreichen, daß dort der Name des aktuellen Elements eingesetzt wird??

... indem Du aus dem Part "top.php3.document.hiddenform"
und einer Variablen name einen neuen String bastelst und diesen von JavaScript
erneut interpretieren läßt (also sowas wie selbstmodifizierender Code).
Dafür gibt's in JS die eval("...")-Funktion.

Also in etwa wie...

function plopp(name) {
...
...

eval("top.php3.document.hiddenform"+name+".value = number;");

...
}

Viele Grüße

   Andreas

nach obennach unten

elements[i].name.value?

Die folgende Nachricht zum Thema stammt von: Oliver Kurlvink, 30. 04. 1999, 12:31

»» eval("top.php3.document.hiddenform"+name+".value = number;");

Thanx, funzt wunderbar!!

nach obennach unten

elements[i].name.value?

Die folgende Nachricht zum Thema stammt von: Janko Wellmeier, 30. 04. 1999, 07:31

Hi!
Ich hatte letztens ein ähnliches Problem und mir wurde hier eine gute Lösung präsentiert.
Um per Variable auf ein Feld zuzzugreifen mußt Du

document.forms[0].elements[name].value

eingeben. Du kannst also bei elements sowohl eine  Indexzahl, wie auch den Namen durch eine Variable eingeben.

Ihc hoffe ich konnte helfen.


Janko

nach oben
Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 1999 Teil von April

© 1998-2006 Seite Impressum, Software: Classic Forum