Autor Zpráva
gardener
Profil
Zdravím

Mám dotaz, jak by šlo docílit toho aby po kliku na input formu ve kterém je zadáno defaultně např.Váš mail
, tak aby po kliku do inputu ten text byl odstraněn a input zůstal čistý.

Pro uživatele, který vyplňuje dlouhý formulář to bude jistě příjemnější,než všechno ručně mazat..

Jde to vůbec v html?
Nebo se musí použít Javascript?
Měsíček
Profil
Znám jedině řešení, kdy musíš použít událost tedy i Javascript.

<input type="text" value="Klikni zde" onClick="this.value=''">
Mike8748
Profil
v html to nejde, musis javascriptem

<input type="text" value="vas email" onfocus="if (this.value=='vas email') this.value='';" onblur="if (this.value=='') this.value='vas email';">

zhruba nejak takhle
gardener
Profil
A onblur je prosím co za fci?
Měsíček
Profil
To není funkce, ale událost, najdi si to na googlu třeba :)
gardener
Profil
Funguje přesně jak jsme měl na mysli,děkuji..těď by mne ještě zajímalo, jeslti by jste mne někdo mohl odkázat někam, kde je pěkně popsáno doplňování formu v závislosti na reakci uživatele..tj: když třeba zaškrtne check box,tak že se mu pod ním zobrazí 3 nové form inputy apod..
To bych chtěl také někdy pochopit ten pricip toho:)
Bubák
Profil
Měsíček, Mike8748
Proč onclick? Co když použiji místo myši klávesnici (tabulátor)?
Výhodnější je použít onfocus.
Měsíček
Profil
Máš pravdu Bubáku příště použiji onfocus.
Leo
Profil
"Pro uživatele, který vyplňuje dlouhý formulář to bude jistě příjemnější,než všechno ručně mazat."

A jeste prijemnejsi je, kdyz ve formulari na zacatku nic vepsaneho neni... Leo
Str4wberry
Profil
A ještě by se dalo Mikovo8748 řešení vylepšit habendorfovou myšlenkou.


Gardenere, v tom není věda, jde to udělat třeba takto:
<script type='text/javascript'>
document.write("<label><input value='1' onClick='zobrazit(\"neco\", this.checked)' type='checkbox'>Zobrazit</label>");
</script>
<div id='neco'>Tři nové inputy</div>

<script type="text/javascript"> 
function zobrazit(id, number)	{
	document.getElementById(id).style.display = (number == 1) ? "block" : "none";	
}

zobrazit("neco");
</script>

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: