W formularzu składania, jak można ewentualnie zaznaczyć pole wyboru/radiobutton według potrzeb?html5: Znaczenie określonego atrybutu wymagane w checkbox/radio
Źródło inspiracji: Pekka „s answer do question
W formularzu składania, jak można ewentualnie zaznaczyć pole wyboru/radiobutton według potrzeb?html5: Znaczenie określonego atrybutu wymagane w checkbox/radio
Źródło inspiracji: Pekka „s answer do question
Wymagane pola wyboru nie są niczym niezwykłym. Praktycznie każdy formularz rejestracyjny korzysta z pola wyboru "Przeczytałem i akceptuję Umowę użytkownika".
Jeśli masz Opera pod ręką wypróbuj poniższy kod. Formularz nie zostanie przesłany, chyba że zaznaczono pole wyboru.
<!doctype html>
<html>
<head>
<title>html5</title>
</head>
<body>
<h1>html5 test</h1>
<form action="/">
<input type="checkbox" required="required" id="cb" name="cb">
<label for="cb">required checkbox</label>
<input type="submit">
</form>
</body>
</html>
Do wyboru, najlepszym sposobem jest prawdopodobnie by go wstępnie wybrać i ustawić go do osób niepełnosprawnych. Żartuję.
Aby wybrać jeden przycisk opcji w grupie, należy wybrać opcję domyślną lub sprawdzić poprawność za pomocą javascript. Nie ma na to sposobu HTML, ponieważ każdy możliwy wybór jest prawidłowy.
W html5 istnieje atrybut required dla pól wyboru.
Są one jakoś dziwne, więc pozwólcie, że zacytuję coś, aby wyjaśnić, jak działają.
Dla pól wyboru wymagany atrybut musi być spełniony tylko wtedy, gdy zaznaczone jest jedno lub więcej pól wyboru o tej nazwie w tym formularzu.
Dla przycisków radiowych wymagany atrybut musi być spełniony tylko wtedy, gdy zaznaczony jest dokładnie jeden z przycisków radiowych w tej grupie radiowej.
Oczywiście zawsze musisz zweryfikować stronę serwera, ponieważ klient zawsze może wysłać ci wszystko, czego zapragnie. Po prostu skorzystaj z tych metod, aby poprawić komfort użytkowania.
+1 za zgadnięcia. bardzo mało prawdopodobne, chyba że przedstawisz silniejszy argument :) – naveen
co zgaduje? właśnie zaktualizowałem odpowiedź zgodnie z html5 sepcs –
+1 specyfikacje są jasne, ale to wciąż * dziwne *. Nie ma sensu z punktu widzenia interfejsu użytkownika. –
prostu próbowałem go na przycisku radiowego w Firefoksie 4. Dodawanie required
do jednego wejścia radia, a następnie złożenie przed wyborem jednego, wyzwala „Wybierz jedną z poniższych opcji” podpowiedź.
E.g. to działa:
<input type="radio" name="gender" value="m" required />
<input type="radio" name="gender" value="f" />
Chrome 12 robi to samo. Safari 5 i IE 9 nie. Testowane na Win7. –
Testowałem wymagane atrybut dla przycisków radiowych dzisiaj na Firefox 17.0.1 na XP SP2.
Wygląda na to, że jest zgodny ze specyfikacją wymagany atrybut dla przycisków/grup radiowych. Firefox wyświetla komunikat "Wybierz jedną z tych opcji". dla obu fragmentów kodu poniżej:
Albo ustawić wymagane atrybut dla każdego z przycisków radiowych
<input type="radio" name="gender" value="male" required="required" />
<input type="radio" name="gender" value="female" required="required" />
lub jednego z elementów radiowych
<input type="radio" name="color" value="blue" />
<input type="radio" name="color" value="red" required="required" />
<input type="radio" name="color" value="green" />
Wszelkie komentarze i aktualizacje są mile widziane.
Link do specyfikacji: http://www.w3.org/TR/html-markup/input.radio.html#input.radio.attrs.required Czy każdy może znaleźć odniesienie wskazujące, który z tych dwóch stylów jest preferowany dla oznaczanie grupy przycisków radiowych zgodnie z wymaganiami? Nigdzie nie mogę tego znaleźć. – Grilse
dziękuję @Grilse za referencyjny adres URL witryny w3.org –
+1: bardzo ważny punkt! jak to przegapiłem? – naveen
Nie potrzebujesz 'required =" required "', wystarczy dodać 'required'. – Ben
'required =" required "' jest poprawny XHTML. Atrybut musi mieć wartość. – leggetter