browserabhängige elementsteuerung
christian klokkers
- javascript
Hi!
Ich möchte gerne select-felder über JS auf einen bestimmten wert setzen. klappt mit dem ie und mozilla(firebird) auf dem pc auch prima, allerdings frag ich mich, wie ich das mit dem nn4.7 oder auf dem mac hinbekomme. das problem ist, dass ich keine möglichkeit gefunden habe,
dies variable hinzubekommen.
hier ein kleinews beispiel, wie das im ie hinhaut:
for (k=1;k <= anzahl; k++) {
pruef_id = spalte * 10 + k;
pruef = "id"+pruef_id;
document.all[pruef].value = 0;
}
hier der ganze quelltext (ohne document.layers, da ich ja kein layer ansprechen will)
http://giga.de/crs/onchange.html
(hier in darf in einer spalte nie zweimal der gleiche wert ausgewählt sein)
ich hoffe, man kann das ungefähr nachvollziehen und das jemand eine idee hat.
gruß christian
Hi Christian,
Ich möchte gerne select-felder über JS auf einen bestimmten wert setzen.
Du kannst auch document.form darauf zugreifen, z.B.
<form name="foo">
... name="x" <!-- irgend ein Feld -->
</form>
document.foo.x = "I'm foo!";
MfG
Danny
schon klar, allerdings wird das ganze schwieriger (und genau das ist ja auch mein problem), wenn ich mehrere felder in einer schleife ändern möchte:
for (k=1;k <= 2; k++) {
pruef = "id"+k;
document.foo.pruef.value = "adsfas"; //so ungefähr müsste es vielleicht sein
}
...
<form name="foo">
... name="id1" <!-- irgend ein Feld -->
... name="id2" <!-- ein weiteres Feld -->
</form>
hier ist pruef ja eine variable und kein bezeichner für ein feld und somit gibts ne fehlermeldung
schon klar, allerdings wird das ganze schwieriger (und genau das ist ja auch mein problem), wenn ich mehrere felder in einer schleife ändern möchte:
for (k=1;k <= 2; k++) {
pruef = "id"+k;
document.foo.pruef.value = "adsfas"; //so ungefähr müsste es vielleicht sein
}
document.foo.elements[pruef].value = "adsfas";
Struppi.
hi,
das problem ist, dass ich keine möglichkeit gefunden habe,
dies variable hinzubekommen.
pruef = "id"+pruef_id;
document.all[pruef].value = 0;
document.all ist microsoft-syntax.
wenn du stattdessen
document.forms["formularname"].elements[pruef].value
verwendest, erhöhen sich die chancen, dass es auch in anderen browsern funktioniert.
siehe auch http://selfhtml.teamone.de/javascript/objekte/elements.htm#allgemeines.
gruss,
wahsaga