2013-02-05 20 views
6

Jest to ważny problem dla niewidomej społeczności, którą próbuję adresować. Jak powiedzieć niewidomym użytkownikom, że nazwa użytkownika jest zajęta?Dostępność w walidacji formularzy javascript

Moja obecna konfiguracja nie jest ważna, ale w przypadku przykładów, mam obecnie implementację Jquery, która sprawdza dane wejściowe użytkownika w stosunku do skryptu php w ajax, który zwraca json, który następnie wyświetlam na ekranie w przypadku błędu pole. Bardzo prosty i wykraczający poza zakres mojego problemu, ponieważ działa doskonale.

Ale jeśli jestem ślepy, nie zauważę, że nazwa użytkownika Batman jest już zajęta lub nie może zawierać spacji, a moje hasło wymaga co najmniej 7 znaków.

Alternatywnie, błędy są wymienione na stronie docelowej błędu po przesłaniu formularza bez javascript - jest masywny, ale działa. Lepsze, bardziej dynamiczne rozwiązanie i suport będą optymalne.

+0

Czy próbowałeś zainstalować FireVox (za darmo) i zobaczyć, jak twoja strona reaguje na interfejs głosowy? Inny tekst na mowę działa inaczej. –

+0

Czy mówisz o prawnie niewidomych, ale nadal widzących lub całkowicie niewidomych? Co to jest, że działa na stronie docelowej, ale nie działa w polu błędu? Czy możliwe jest uzyskanie tego, co chcesz, z wyskakującego okienka lub modalu? –

+0

Mówię o standardowej walidacji javascript. A-la twitter, gdzie błąd się podniósł. Zaimplementowałem to, co Jared zasugerował i sprawiło, że dobrze współpracuje z VoiceOver. –

Odpowiedz

5

Jako użytkownik czytnika ekranu zwykle wypełniam cały formularz, przesyłam go, a jeśli to nie działa, wtedy szukam tekstu błędu. Aby powiadomić niewidomego użytkownika o nieprawidłowych danych przed przesłaniem całego formularza, spójrz na scenę opcji aria-live = "asertywna" na następnej stronie testowej, sekcja d. http://www.accessibleculture.org/articles/2011/02/aria-alert/ Spośród wszystkich przypadków testowych, sekcja d jest jedynym testem, który sprawdził się pod firefox 18.0.1 z Jaws 13.0. Z jakiegoś powodu opcja alertu nie działa. Możesz użyć opcji asertywnej, aby powiadomić użytkownika, że ​​coś jest nie tak.

+0

Świetnie, dzięki! Przetestowałem tę stronę za pomocą VoiceOver w Chrome i otrzymałem D i C do pracy. Wygląda na to, że D jest najlepszą opcją dla tych rzeczy z szerszym wsparciem. –

Powiązane problemy