Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

checkbox domyślnie zaznaczony

Termin Definicja
checkbox domyślnie zaznaczony

Checkbox domyślnie zaznaczony to praktyka formularza automatycznie akceptująca warunki bez świadomego działania odbiorcy.

Jak działa stan domyślnie zaznaczonego checkboxa

Checkbox domyślnie zaznaczony to pole wyboru, które po otwarciu formularza ma ustawiony stan aktywny bez wcześniejszego kliknięcia przez użytkownika. W języku HTML uzyskuje się taki efekt przez dodanie atrybutu checked do elementu <input type="checkbox">. Przykładowa konstrukcja wygląda tak: <input type="checkbox" name="zgoda" value="tak" checked>. Atrybut określa początkowy stan kontrolki podczas utworzenia formularza, a nie oznacza stałego wymuszenia zaznaczenia.

Po wyświetleniu strony użytkownik może zaznaczenie usunąć, o ile skrypt lub mechanizm formularza nie blokuje takiej zmiany. Sam checkbox ma dwa podstawowe stany: zaznaczony i niezaznaczony. W interfejsie może występować także stan pośredni, określany jako indeterminate, używany na przykład przy wyborze części elementów w grupie. Stan pośredni nie jest jednak tym samym co zwykłe domyślne zaznaczenie i nie powinien być z nim utożsamiany.

Różnica między atrybutem checked a aktualnym stanem pola

W dokumentowym modelu obiektowym przeglądarki początkowe zaznaczenie jest związane z właściwością defaultChecked, natomiast bieżący stan kontrolki odczytuje się przez właściwość checked. Po załadowaniu formularza oba stany mogą mieć wartość true. Jeżeli użytkownik odznaczy pole, właściwość checked zmieni się na false, ale atrybut HTML oraz wartość defaultChecked nadal opisują stan początkowy zapisany w znaczniku.

Ta różnica ma znaczenie przy programowaniu formularzy. Skrypt sprawdzający, czy pole jest obecnie wybrane, powinien odczytywać element.checked, a nie analizować samą obecność tekstowego atrybutu checked. Ustawienie element.checked = true zmienia stan widoczny dla użytkownika. Z kolei metoda form.reset() przywraca kontrolki do ich stanów początkowych, więc checkbox oznaczony w kodzie jako checked po resecie ponownie będzie zaznaczony.

Wpływ zaznaczenia na wysyłanie danych formularza

Checkbox zachowuje się inaczej niż wiele pól tekstowych podczas wysyłania formularza. Jeżeli jest zaznaczony i ma ustawiony atrybut name, przeglądarka dołącza do danych parę składającą się z nazwy i wartości, na przykład zgoda=tak. Jeżeli checkbox jest odznaczony, jego parametr zwykle nie jest wysyłany w ogóle. Brak parametru nie oznacza więc wartości tekstowej false; aplikacja odbierająca formularz musi sama zinterpretować brak pola jako brak zaznaczenia.

Wartość przesyłana do serwera pochodzi z atrybutu value. Gdy nie zostanie on podany, przeglądarki stosują domyślną wartość on, co często utrudnia jednoznaczną interpretację danych. Przy formularzach obsługiwanych skryptem JavaScript dane można odczytywać przez FormData, na przykład za pomocą new FormData(form). Wtedy również obowiązuje zasada, że odznaczone pole nie tworzy wpisu w przesyłanym zestawie. Kod obsługi powinien zatem jawnie sprawdzać obecność parametru albo przekazywać wartość logiczną w sposób przewidziany przez konkretną aplikację.

Kontrola interfejsu i diagnoza nieoczekiwanego zaznaczenia

Jeżeli checkbox pojawia się zaznaczony mimo braku atrybutu checked w źródłowym HTML, przyczyną może być JavaScript, odtworzenie formularza przez bibliotekę interfejsu, zapisany stan strony albo mechanizm automatycznego uzupełniania danych. Weryfikację najlepiej rozpocząć od narzędzi deweloperskich przeglądarki: w zakładce inspekcji elementu można sprawdzić bieżącą właściwość checked, a w konsoli wykonać odczyt document.querySelector('input[type="checkbox"]').checked. Następnie należy prześledzić obsługę zdarzeń change, click i kod wykonywany podczas inicjalizacji formularza.

Istotne jest także prawidłowe powiązanie pola z opisem. Element <label> powinien wskazywać checkbox przez zgodne wartości atrybutów for i id albo obejmować kontrolkę jako element nadrzędny. Dzięki temu kliknięcie opisu zmienia stan pola, a użytkownik korzystający z klawiatury może przejść do niego fokusem i użyć klawisza spacji. W przypadku problemów z formularzem na laptopie lub komputerze PC Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów stacjonarnych i ich podzespołów, a diagnoza może obejmować także sprawdzenie działania przeglądarki oraz interfejsu formularza.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę