Avatar billede clansite.dk Nybegynder
31. maj 2005 - 08:53 Der er 6 kommentarer og
2 løsninger

Loop med ID

<SCRIPT TYPE="text/javascript">
function calcUpdate(strID) {
    I = 0
    for (I = 0; I <= strID; I++) {
  document.forms[1].Antal + I + .value = document.forms[0].Antal.Value;
  document.forms[1].Format + I + .value = document.forms[0].Format.Value;
  }
}
</SCRIPT>
-------------
Jeg vil have så den sætter Antal1 Antal2 Antal3........ Format1 Format2 Format3...... Osv osv.. Hvorfor er det lige at det ikke virker?
Avatar billede medions Nybegynder
31. maj 2005 - 09:00 #1
function calcUpdate(strID) {
    I = 0
    for (I = 0; I <= strID; I++) {
  document.getElementById(Antal + I).value = document.forms[0].Antal.Value;
  document.getElementById(Format + I).value = document.forms[0].Format.Value;
  }
}

Og så husk og sæt en id="" parameter på dine inputfelter og hvad du ellers har...

//>Rune
Avatar billede clansite.dk Nybegynder
31. maj 2005 - 09:39 #2
Men Rune, kan man ikke lave det på den anden måde? Bare fordi der er RIGTIG mange forms at skrive id="" på..
Avatar billede medions Nybegynder
31. maj 2005 - 09:44 #3
Prøv lige sådan her så:

function calcUpdate(strID) {
    I = 0
    for (I = 0; I <= strID; I++) {
  document.forms[1].elements['Antal'+I].value = document.forms[0].Antal.Value;
  document.forms[1].elements['Format'+I].value = document.forms[0].Format.Value;
  }
}

//>Rune
Avatar billede clansite.dk Nybegynder
31. maj 2005 - 09:47 #4
Fejl:
document.forms.1.elements........ er null
Avatar billede medions Nybegynder
31. maj 2005 - 10:01 #5
function calcUpdate(strID) {
    I = 0
    for (I = 0; I <= strID; I++) {
  document.forms[1].elements["Antal"+I].value = document.forms[0].Antal.Value;
  document.forms[1].elements["Format"+I].value = document.forms[0].Format.Value;
  }
}

Well, syntaxen er på sin vis korrekt, så det er noget andet der er galt...

//>Rune
Avatar billede clansite.dk Nybegynder
31. maj 2005 - 10:06 #6
Medions du kan se siden på www.situs.dk/calle og så når du har uploaded og er på Step2 skal man kunne tilpasse alle forms på en gang og trykke "Opdater Siden" og så opdatere den alle forms..
Avatar billede clansite.dk Nybegynder
31. maj 2005 - 10:16 #7
Rune, jeg fandt en måde..

<SCRIPT TYPE="text/javascript">
function calcUpdate(strID) {
    for (var I = 1; I <= strID; I++) {
  eval("document.forms[1].Antal" + I + ".value = document.forms[0].Antal.value");
  eval("document.forms[1].Format" + I + ".value = document.forms[0].Format.value");
  }
}
</SCRIPT>

Og det virker perfekt, men du får points for dit forsøg :)
Avatar billede olebole Juniormester
31. maj 2005 - 11:07 #8
<ole>

eval er en håbløst dårligt performande funktion ... nok JS' aller værste. Når scriptet oven i købet skal afvikles i et loop, kunne du ikke have valgt meget dårligere fremgangsmåde  :)
Sådan bør du gøre i stedet:

function calcUpdate(strID) {
    for (var I = 1; I <= strID; I++) {
        document.forms[1].elements["Antal"+I].value = document.forms[0].Antal.value;
        document.forms[1].elements["Format"+I].value = document.forms[0].Format.value;
    }
}

/mvh
</bole>
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