Acabo de subir al sitio de mi firma un script el cuál adiciona un 3º select dependiente de los otros dos. Posiblemente te resulte de utilidad. Utiliza el mismo concepto que el expuesto por Znet con la diferencia que utiliza la misma función para la carga de los dos selects dependientes.
Una alcaración: en lugar de utilizar un Math.random() en el open para evitar el cacheo de datos, pueden utilizar el método POST (
http://www.forosdelweb.com/f127/open-get-post-391004/) o colocar el el archivo procesador las cabeceras de no-cache correspondientes (
http://www.forosdelweb.com/showthread.php?t=373996).
Para cualquier duda aquí estamos.
Saludos.