Tämä on vissiin taas näitä simppeleitä mokia joita itse ei tajua :)
Noissa IF lauseissa on vissiin jokin virhe koska, options ruudusta valitsemalla arvot 0-9 tulostuu aina samat kuvat eli 9 arvon mukaan.
function key() { var key1=""; var key2=""; var key3=""; var key4=""; var key5=""; var key6=""; var key7=""; var key8=""; var key9=""; var key10=""; var key11=""; var hei = parseInt(document.ags.vl.value); document.ags.tst.value=hei; 'Tämä tulostuu oikein (arvot 0-9) if (hei=0) { key1 = "8"; key2 = "6"; key3 = "9"; key4 = "4"; key5 = "5"; key6 = "1"; key7 = "2"; key8 = "2"; key9 = "9"; key10 = "7"; key11= "2"; } ' Tässä välissä ehdot "hei" arvoille 1-8 if (hei=9) { key1 = "1" ; key2 = "4"; key3 = "8"; key4 = "10"; key5 = "3"; key6 = "7"; key7 = "9"; key8 = "9"; key9 = "8"; key10 = "6"; key11= "9"; } document.getElementById('n1').src = "images/"+key1+".jpg"; document.getElementById('n2').src = "images/"+key2+".jpg"; document.getElementById('n3').src = "images/"+key3+".jpg"; document.getElementById('n4').src = "images/"+key4+".jpg"; document.getElementById('n5').src = "images/"+key5+".jpg"; document.getElementById('n6').src = "images/"+key6+".jpg"; document.getElementById('n7').src = "images/"+key7+".jpg"; document.getElementById('n8').src = "images/"+key8+".jpg"; document.getElementById('n9').src = "images/"+key9+".jpg"; document.getElementById('n10').src = "images/"+key10+".jpg"; document.getElementById('n11').src = "images/"+key11+".jpg"; }
if (hei=0) //Sijoitetaan 0 muuttujaan hei. Tulos on 0, joten ehdollista lohkoa ei suoriteta. { //Tätä ei suoriteta koskaan } //... if (hei=9) //Sijoitetaan 9 muuttujaan hei. Tulos on 9, joten ehdollinen lohko suoritetaan. { //Tämä suoritetaan aina }
Eli hei=0 tilalla pitäisi olla hei==0 tai hei===0 jne.
Ihmettelen kyllä myös miksi tuo koodi on tuollaista järjetöntä toistoa? Maksetaanko sinulle kirjoitetun rivimääärän mukaan tai jotain?
Tässä olisi sama toiminnallisuus vähän vähemmällä copy-pastella:
function key() { var hei = parseInt(document.ags.vl.value); document.ags.tst.value=hei; //Tämä tulostuu oikein (arvot 0-9) key = [ [8,6,9,4,5,1,2,2,9,7,2], /* tässä välissä keyt 1-8 */ [1,4,8,10,3,7,9,9,8,6,9] ][hei]; for (var i=1;i<12;i++) { document.getElementById('n'+i).src = "images/"+key[i-1]+".jpg"; } }
jotain tuollaista epäilinkin, pelkällä harrastepohjalla yritän asioita sisäistää :) mutta kiitos
Aihe on jo aika vanha, joten et voi enää vastata siihen.