Si vous ne souhaitez pas d'actualisation de la page, la réponse est "JavaScript". Maintenant, vous avez quelques options là-bas. Personnellement, je préfère charger plus à l'avance, donc je garde un objet JSON qui décrit les possibilités, puis j'échange le contenu statique pour le contenu statique.
Cela signifierait qu'onchange j'aurais quelque chose comme :
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 );
}
Votre autre option consiste à envoyer des données "sur le fil" et à les faire fonctionner via AJAX. N'ayant pas de place pour un tutoriel, je pense que je peux vous lier en toute sécurité à celui-ci .