HEJ!
Första värdet är 0, eftersom det står att i=0 i loopen som utgångsvärde.
Sedan tror jag att du får 12, eftersom du tittar på objekt som är 'select', 19 är alla objekt!
Korrekt?
2 svar · 211 visningar · startad av bwcMikke
Vad är det som går fel i följande kod:
var z=document.forms["form1"].elements
var sumStart=0;
for (var i=0; i<=z.length; i++){
alert(z.length);
alert(i);
if (z[i].type.indexOf('select')!=-1){
//selectboxar
l= z[i].length
for (var idx=0; idx<=l; idx++){
val=z[i].options[idx].selected
if (val){
sumStart += parseInt(z[i].options[idx].prisStart)
}
alert("Funkar");
}
alert("Funkar inte");
}
alert("Funkar inte");
}
document.getElementById("pris").innerHTML= sumStart+" kr";
Det som händer att det kommer upp aen alertbox med texten "19" därefter en med "0", 12 st boxar med "Funkar" och sedan är det slut.
Varför börjar den inte om med "19" och sedan "1" o.s.v.
Är det något skitfel som jag inte hittat?
Ang raden med "prisStart" så är det en egendefinierad egenskap för en tagg, men det är ingen skillnad om jag skriver ex. "sumstart++"
HEJ!
Första värdet är 0, eftersom det står att i=0 i loopen som utgångsvärde.
Sedan tror jag att du får 12, eftersom du tittar på objekt som är 'select', 19 är alla objekt!
Korrekt?
Jag har 19 olika kontroller (selectboxar, textboxar och knappar) på sidan.
Kontroll nr 0 är en selectbox med 12 element.
Problemet är att den inte går vidare till kontroll 1 och tittar vilken typ av kontroll det är, och om det är en selectbox, loopar alla värden i den för att se hur många och vilka värden som är markerade.