Testailin erilaisia ohjeita netistä ja noista oppaista mutta asia ei auennut niin että tuo toimisi, eli yksinkertaisuudessaan:
Sivulla on kuva jonka ID ja Nimi on "n1" satunnaisluku arpoo kuvan välille 1.png-6.png eli nopan silmälukuja muuttuja noppa1, testasin esimerkiksi tälläistä
document.images["n1"].src = "images/"+noppa1+"png";
en saa tuota kuvaa päivittymään nappula toimii (saan luvut kyllä näkyviin).
Saako nuo kuvat vaihtumaan niin ettei koko sivu päivity?
Olisko
document.getElementById('n1').src = "images/"+noppa1+"png"
Huomasin tuossa kun kokeilin. laitoin sivulle tekstikentän,
kun painan heitä nappia, teksti ruutuun ilmestyy hetkeksi tuo satunnaisluku jonka jälkeen teksti kenttä tyhjenee, eli tässä tuo testi koodi
document.Yazzy.text1.value=noppa1; document.Yazzy.getElementById('n1').src = "images/"+noppa1+"png"
Kuva ei tuossa vaihdu mutta johtuisko se tuosta edellä mainitusta ongelmasta, eli
tuo Heitä nappula päivittää koko sivun ja resetoi kaiken.
http://kamucairnit.com/Huki/yazzy/
Kun ei ole koskaan tarkoitus lähettää lomaketta palvelimelle, voit laittaa form-elementtiin attribuutin onsubmit="return false"
. Voit myös muokata koodiasi niin, ettei form-elementtiä ole ollenkaan, jolloin kaikki tekstikentät ja muut pitää hakea id:n perusteella, kuten jo teet kuvien kohdalla.
Kiitos tuosta, jälkimmäinen auttoi tuohon kenttien tyhjentymiseen mutta kuva ei vieläkään vaihdu korjasin tuon png tarkentimeen pisteen ja puolipisteen lauseen perään muttei nekään auttanut.
Jos esim. käyttäisit sitä virhekonsolia (F12 tai Ctrl+Shift+J), kuten aiemmin neuvottiin, näkisit virheilmoituksen:
lainaus:
Uncaught TypeError: document.Yazzy.getElementById is not a function
Kuten tästä näkyy, document.Yazzy.getElementById ei ole funktio. Koodissa pitäisikin lukea vain document.getElementById.
Lisäys: Ja tämän viestin kirjoittamisen aikana ehdit näköjään rikkoa koodisi jostain muusta kohti, tulee uusia virheitä. Katso sitä virhekonsolia! Laita myös aivan sivun alkuun rivi <!DOCTYPE html>
, jotta selaimet yrittävät olla standarditilassa.
Kiitos nyt tuo toimii
Aihe on jo aika vanha, joten et voi enää vastata siihen.