Avatar billede kimlarsen1978 Nybegynder
04. juni 2006 - 01:11 Der er 12 kommentarer og
1 løsning

document.VARIABEL.value

Hejsa
Hvordan gør man det her:

for (i=0;i!=datoer.length;i++) {
w = 1;
var NAVNPAAFELT = 'datoUnd_'+w;
document.arrangement.+NAVNPAAFELT+.value = datoer[i];
w++;
}

ovenstående virker ikke :-(
Avatar billede loevgaard Praktikant
04. juni 2006 - 01:21 #1
var w = 1;
for (i=0;i<datoer.length;i++) {
var NAVNPAAFELT = 'datoUnd_'+w;
document.arrangement.+NAVNPAAFELT+.value = datoer[i];
w++;
}
Avatar billede kimlarsen1978 Nybegynder
04. juni 2006 - 01:26 #2
Hmm, ja det var en dum fejl at sætte w til 1 ved hvert gennemløb, men det fejler fortsat...

Fejl:
"Id var ventet" på denne linie: var NAVNPAAFELT = 'arrangementUnd_'+w;
Avatar billede loevgaard Praktikant
04. juni 2006 - 01:35 #3
var w = 1;
for (i=0;i<datoer.length;i++) {
var NAVNPAAFELT = 'datoUnd_'+w;
document.getElementById(NAVNPAAFELT).value = datoer[i];
w++;
}

<input type="text" id="datoUnd_1" />
Avatar billede loevgaard Praktikant
04. juni 2006 - 01:36 #4
Du behøver heller ikke bruge w, i hvert fald ikke i ovenstående tilfælde:

for (i=0;i<datoer.length;i++) {
var NAVNPAAFELT = 'datoUnd_'+i;
document.getElementById(NAVNPAAFELT).value = datoer[i];
}

<input type="text" id="datoUnd_1" />
Avatar billede kimlarsen1978 Nybegynder
04. juni 2006 - 01:43 #5
Nu har jeg:

for (i=0;i<datoer.length;i++) {
var NAVNPAAFELT = "arrangementUnd_"+i;
document.getElementById(NAVNPAAFELT).value = datoer[i];
}

det fejler med "getElementById(...) er null eller ikke et object"
Avatar billede kimlarsen1978 Nybegynder
04. juni 2006 - 02:14 #6
Hmmm - jeg havde lavet en kæmpe bommet... Jeg kørte JS inden felterne var defineret... øvøvøvøvøv, men nu virker det.

Tak for hjælpen anyway
Avatar billede olebole Juniormester
04. juni 2006 - 16:01 #7
<ole>

Det er nu ikke sikkert, det virker. Du skal huske at bruge id på de elementer, du skal have fat i. Det er kun IE, der er så larmende fatsvag, at den tillader , man bruger en name-attribut i forbindelse med 'getElementById' - og det bliver forhåbentlig rettet i version 7.0  ;o)

/mvh
</bole>
Avatar billede kimlarsen1978 Nybegynder
04. juni 2006 - 17:36 #8
Jeg bruger:

w = 1;
for (i=0;i<datoer.length;i++) {
  navnpaafelt = "arrangementUnd_"+w;
  document["arrangement"].elements[navnpaafelt].value = trimstr(datoer[i]);       
  w = w+1;
}

Er det ikke ok?
Avatar billede kimlarsen1978 Nybegynder
04. juni 2006 - 17:37 #9
også: <input type="Text" name="arrangementUnd_XX" value="" size="14" readonly>
Avatar billede loevgaard Praktikant
06. juni 2006 - 08:48 #10
<input type="Text" name="arrangementUnd_XX" id="arrangementUnd_XX" value="" size="14" readonly>

Sådan.. :-)
Avatar billede kimlarsen1978 Nybegynder
06. juni 2006 - 13:22 #11
Ja, jeg er med på hvordan man sætter "id" på et felt :-)

Spørgsmålet var om

document["arrangement"].elements[navnpaafelt].value = trimstr(datoer[i]); 

kræver et id eller om den i fremtiden også kan køre på name...
Avatar billede olebole Juniormester
06. juni 2006 - 18:43 #12
Hehe ... tingene blev rodet lidt rundt i tråden  :)

Der er to forskellige måder, som idag er lige valide. Den gamle ustandardiserede DOM-metode:
    document["arrangement"].elements[navnpaafelt].value = "værdi";
- eller det samme med en lidt anden syntaks:
    document.arrangement.elements[navnpaafelt].value = "værdi";
- eller med en tredie syntaks:
    document.forms["arrangement"].elements[navnpaafelt].value = "værdi";

Over for denne måde at adressere feltet på står den måde, l0vgaard viste i (04/06-2006 01:35:26) ... med den W3C-standardiserede DOM:
    document.getElementById(IDpaafelt).value = "værdi";

- men den kræver, der er sat et ID på feltet. Du kan også bruge name-attributten med W3C's DOM, men så kræver det, at der kun er ét felt med det navn - eller at du ved, hvormange der er og hvilket, du skal have fat i:
    document.getElementsByName(navnpaafelt)[0].value = "værdi";

- her hev jeg (med: [0]) fat i det første felt med navnet i variablen 'navnpaafelt'.

Håber, det hjalp lidt på forståelsen  :)
Avatar billede kimlarsen1978 Nybegynder
06. juni 2006 - 18:55 #13
Tnx
Kan du ikke ligge et svar, så får du point for informationer :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester