Klucz dostępu n przeskakuje w nawigacji strony. Przejdź do początku.

Ten dokument jest tłumaczeniem. W przypadku rozbieżności i błędów aktualna wersja angielska powinna być uznana za autorytatywną. Pierwotne prawa autorskie należą do W3C jak wykazano poniżej.

Tłumacz: K.Wiśniewski

s_gotoW3cHome Internacjonalizacja
 

Sortowanie rozwijanej listy

Pytania

W części formularza znajduje się rozwijana lista wyrazów. Dlaczego wyrazy te nie są odpowiednio posortowane po przetłumaczeniu listy na inny język?

Odpowiedź

Mimo, że wiele języków programowania ma narzędzia, które sortują rozwijaną listę wyrażeń przed wyświetleniem, funkcja HTML <select> nie ma możliwości sortowania. Funkcja ta wyświetla <options> w podanej kolejności. Dlatego należy samemu posortować przetłumaczone opcje przed ich prezentacją. Przeważnie robi się to ręcznie, albo za pomocą zaprojektowanych przez programistów procesów (jak na przykład XSLT transform).

Powiedzmy, na przykład, że mamy rozwijaną listę zwierzątek w porządku alfabetycznym:

<form .....>
    <select size="1" name="pet">
       <option value='cat'>cat</option>
       <option value='dog'>dog</option>
       <option value='mouse'>mouse</option>
    </select>
...
...
</form>

Przetłumaczona na język holenderski lista wygląda tak:

<form .....>
    <select size="1" name="pet">
       <option value='cat'>kat</option>
       <option value='dog'>hond</option>
       <option value='mouse'>muis</option>
    </select>
...
...
</form>

Jednakże, aby lista była w porządku alfabetycznym w języku holenderskim musimy posortować listę w następujący sposób:

<form .....>
    <select size="1" name="pet">
       <option value='dog'>hond</option>
       <option value='cat'>kat</option>
       <option value='mouse'>muis</option>
    </select>
...
...
</form>

Należy tak zrobić dla każdego wyświetlanego języka.

Dodadkowe informacje

Zauważ, że parametry wartości w powyższych przykładach nie zostały przetłumaczone. Takie oddzielenie wyświetlanej treści od danych pozwala programiście na zachowanie danych. Oznacza to, że programista nie musi zmieniać treści otrzymanych od użytkownika za każdym razem gdy dodawany jest nowy język.

Powiedz nam co myślisz (po angielsku).

Warto przeczytać

Autor: Russ Rolfe, Microsoft Corporation. Tłumacz: K.Wiśniewski.

Ważny XHTML 1.0!
Ważne CSS!
Zakodowano w UTF-8!

Angielska wersja dokumentu z dnia 2003-06-09. Tłumaczenie wykonano dnia 2008-08-17 GMT

Historia zmian dokumentu qa-select-sorting w blogu i18n.