Które zdarzenie zachodzi, gdy ZMIENI się wartość pola (np. po wybraniu opcji z listy)?
Źle.
onsubmit dotyczy WYSŁANIA formularza.Dobrze.
onchange reaguje na zmianę wartości pola.Źle.
onclick reaguje na kliknięcie.Źle. Takie zdarzenie nie istnieje w standardzie.
Zdarzenie
onchange uruchamia kod, gdy wartość kontrolki ZMIENI się i pole straci fokus - klasycznie po wybraniu innej opcji z listy <select> albo po edycji i opuszczeniu pola tekstowego. Używa się go np. do przeliczenia formularza po zmianie wyboru: <select onchange="przelicz()">. Zapamiętaj: „change” = reakcja na zmianę wartości pola, a nie na samo kliknięcie czy pisanie.Pozostałe zdarzenia reagują na inne akcje.
onclick zachodzi przy kliknięciu elementu, niezależnie od tego, czy coś się zmieniło. onsubmit dotyczy WYSŁANIA całego formularza, a nie pojedynczego pola. onEnter nie istnieje w standardzie zdarzeń (reakcję na Enter realizuje się przez onkeydown). Zmianę wartości pola obsługuje onchange.