Sivulla on form-lomake ja mitä niihin input kenttiin pitää kirjoittaa (esim nimi, email, jne..) lukee itse kentässä, ja kun käyttäjä valitsee jonkun kentän, niin se teksti esim "tähän tulee nimesi" häviää ja käyttäjä voi kirjoittaa sinne oman datan. Jos käyttäjä ei kirjoita mitään, niin siihen tulee taas tuo "tähän tulee nimesi"-teksti.
Miten tehdään
tuollanen
4696
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 4
Vanhimmat
..onko kenttä tyhjä tai onko siinä vakioteksti, tyhjä mahdollisuus tutkitaan vasta kentästä poistuttaessa, siinä se logiikka kokonaisuudessaan, vai pyysitkö laiskuudessasi valmista ratkaisua?
Tässä sivustossa sama juttu on toteutettu huomattavasti fiksummin:
http://www.velilehti.fi/galleria/6/
Niin ihan samalla tavallahan tuo on tehty, paitse piilotat tyylien avulla tekstit ja näytät ne.
Ja eihän tuo ole täydellinen, JS:llä pystyy muuttamaan tyylien arvoja jotenka ei tartteta
if (document.getElementById) {
document.write('');
document.write('LABEL.backup{display:none;}');
document.write('');
}
Ensiksi :n sisään ja sen tagin sisälle 2 funktiota:
function sumea(kentta) {
if (kentta.value == '') {
kentta.value = 'Tämä on pakollinen kenttä'
}
}
function kirkas(kentta) {
if (kentta.value == 'Tämä on pakollinen kenttä') {
kentta.value = ''
}
}
Jälkimmäinen noista tarkistaa onko kentässä teksti "Tämä on..." ja jos on niin kentän arvo tyhjennetään. Toinen tarkistaa onko kentän arvo tyhjä ja jos on niin laittaa siihen tekstin. Näitä 2 funktioita kutsutaan sitten vain halutun inputin onblur ja onfocus kohdissa. Esim näin: