Często po załadowaniu strony gdzie występują pola formularza chcemy ustawić kursor od razu w konkretnym polu.
Nic prostszego.
W HTML strony wstawiamy:
<body onload=”document.getElementById(‘nazwa_pola’).focus()”>
[…]
<input id=”nazwa_pola”>
[…]
</body>
To rozwiązanie działa zarówno pod IE jak i Firefoxem (testowałem pod IE 8 i FF 3.6.3)
Dla utrzymania kodu HTML w porządku zastosowałem ponadto pętlę wyświetlającą tag jedynie gdy formularz jest wyświetlany – w moim przypadku był to formularz do logowania. Jeśli użytkownik jest zalogowany – zamiast wyświetl jedynie :
if(!isset($_SESSION[‘login’]))
{
echo “<BODY onload=”document.getElementById(‘login’).focus”>”;
}
else
{
echo “<body>”;
}
NIE stosuj nigdy poniższego rozwiązania:
<body onLoad=”nasz_formularz.tresc.focus()”>
[…]
<form name=”nasz_formularz”>
[…]
<input type=”text” name=”tresc”>
ponieważ działa jedynie pod IE!!!