Mam formularz a w nim (w wielkim skrócie):
<form class="rej" action="registration.php" method="post"> <!-- ... --> <select id="fr_v" name="v_id"> </select> <!-- ... --> <input type="checkbox" name="fr_accept" id="fr_accept" value="1" onclick="this.form.elements['butSub'].disabled = !this.checked" /> <!-- ... --> <input class="botRes" type="reset" value="Wyczyść" /> <input class="botSub" type="submit" name="butSub" disabled="disabled" value="Zarejestruj" /> </form>
Całość jest w PHP. Jest to fragment formularza rejestracji. Zrobiłem go tak, że jeżlei użytkownik już wszystko wypełni ale zdaży się, że coś źle wypełni np. pole imie będzie mieć niedopuszczalne znaki, to po naciśnięciu przycisku "Zarejestruj" znowu otworzy się strona z formularzem ale te pola z wartościami, które były poprzednio dobrze wpisane zostaną uzupełnione automatycznie. W tym przykłądzie wybrano pozycję nr 2 z listy rozwijalnej. Zatem po próbie wysłania otworzył się znów formularz i domyślnie pozycja druga została dodatkowo opatrzona atrybutem selected="selected".
Teraz chciałbym, aby po naciśnięciu przycisku Wyczyść lista ustawiła się na pozycję pierwszą. Tego nie umiem zrobić (nie wiem czy jest to nawet wykonalne), gdyż po naciśnięciu przycisku "Wyczyść" pozycja ustawia się na tą, która jest opatrzona atrybutem selected. I to mnie w zasadzie nie dziwi bo tak działa właśnie przycisk z typem "reset".
---------------------------------------
A to jest moje rozwiązanie tej listy select w PHP (czyli tak jak wygląda obecnie u mnie w skrypcie):
<select id="fr_v" name="v_id"> <?php $sql = 'SELECT v_id, v_rank FROM rank'; { { } } ?> </select>