Objektbezeichnung zusammensetzen
Thomas
- javascript
0 Thomas Meinike0 benji
0 benji0 Thomas Meinike0 benji
Hallo zusammen - ich verzweifle seit Tagen an einem kleinen Javascript-Problem, zu dem es bestimmt eine völlig simple Lösung gibt.
Ich muss eine Objektbezeichnung dynamisch zusammensetzen.
Also nicht:
document.bildname.src="pfeil.gif"
sondern bildname soll in einer Loop durch ein Präfix plus dem Index der Loop zusammengesetzt werden.
Also sowas wie
for(var i=0; i<concernedLayers.length; i++) {
document.xyz+i.src="pfeil.gif";
}
D.h. die Image-Ansprache soll loopen über xyz0, xyz1, xyz2 etc.
Auch mit dieser eval-Funktion habe ich's nicht geschafft.
Any ideas?
Hallo,
sondern bildname soll in einer Loop durch ein Präfix plus dem Index der Loop zusammengesetzt werden.
Also sowas wiefor(var i=0; i<concernedLayers.length; i++) {
document.xyz+i.src="pfeil.gif";
document.images["xyz"+i].src="pfeil.gif";
}
MfG, Thomas
Hallo,
sondern bildname soll in einer Loop durch ein Präfix plus dem Index der Loop zusammengesetzt werden.
Also sowas wiefor(var i=0; i<concernedLayers.length; i++) {
document.xyz+i.src="pfeil.gif";
document.images["xyz"+i].src="pfeil.gif";
}MfG, Thomas
oder so
Hallo !
Auch mit dieser eval-Funktion habe ich's nicht geschafft.
Any ideas?
Ja: benutze die eval-funktion richtig :) ALSO:
for(var i=0; i<concernedLayers.length; i++) {
document.xyz+i.src="pfeil.gif";
}
Also:
document.xyz+i.src="pfeil.gif";
eval("document.xyz" + i + ".src = "pfeil.gif";");
so muss das aussehen. eval macht also z.B. sowas:
var 1 = "alert("";
var text = "Hallo";
var 2 = "");";
eval(1 + text + 2);
D.h. die Image-Ansprache soll loopen über xyz0, xyz1, xyz2 etc.
also was soll eigentlich dein document.xyz1.src ? Ein Bild kannst du so nicht ansprechen. Eher so: document.images[1] oder so: document.getElementbyId("xyz1") - ich denke, das willst du machen, oder so: document.getElementbyname("namedesobjekts"), naja, kannst es auch mit all machen, ist aber dumm (geht nur unter IE).
Letztenendes bekommst du dein Bild
<img src="vorher.gif" id="xyz1">
auf jeden fall damit:
eval("document.getElementbyId("xyz" + i + "").src = "pfeil.gif";");
nacher zu src="pfeil.gif" !
Auch mit dieser eval-Funktion habe ich's nicht geschafft.
Jetzt schon :)
Any ideas?
schon gegeben ;)
benji
Hallo,
so muss das aussehen. eval macht also z.B. sowas:
var 1 = "alert("";
var text = "Hallo";
var 2 = "");";eval(1 + text + 2);
Variablennamen duerfen nicht aus Ziffern bestehen und auch nicht damit beginnen.
auf jeden fall damit:
eval("document.getElementbyId("xyz" + i + "").src = "pfeil.gif";");
nacher zu src="pfeil.gif" !
Abgesehen davon, dass es noch immer getElementById lautet, ist auch hier eval() voellig ueberfluessig:
document.getElementById("xyz"+i).src="pfeil.gif";
MfG, Thomas
Ja ok, auf solche Kleinigkeiten sollte man mal nicht achten...
Im grunde genommen egal.
benji