Jeśli nie chcesz odświeżać strony, odpowiedź brzmi „JavaScript”. Teraz masz kilka opcji. Osobiście wolę ładować więcej z góry, więc trzymam obiekt JSON, który określa możliwości, a następnie zamieniam zawartość statyczną na zawartość statyczną.
Oznaczałoby to, że onchange miałbym coś takiego:
var first = document.getElementById( "id of first select" )
var items = possibilities[
first.value // you can also do things with selectedIndex and options if needs.
];
var second = document.getElementById( "id of second select" )
for( var i in items )
{
var opt = document.createElement('option');
opt.setAttribute('value', items[ it ] );
second.appendChild( opt );
}
Inną opcją jest wysyłanie danych „przez przewód” i uruchamianie ich przez AJAX. Nie mam miejsca na samouczek, myślę, że mogę bezpiecznie połączyć Cię z tym .