el código es:
Código
<html> <head> </head> <body> <form name="f1" action="validar3.php" method="post"> <select name="category" onchange="cambia_subcategory()"> <option value="0" selected="">Seleccione... <select name="subcategory" onchange="cambia_segdsubcategory()"> <option value="-"> <select name="segdsubcategory"> <option value="-"> </form> <script> //defino una serie de varibles Array para cada país var subcategorys_Es=new Array("-","Andalucía","Asturias","Baleares","Canarias","Castilla y León","Castilla-La Mancha","...") var subcategorys_Ar=new Array("-","Salta","San Juan","San Luis","La Rioja","La Pampa","...") var subcategorys_Col=new Array("-","Cali","Santamarta","Medellin","Cartagena","...") var subcategorys_Fr=new Array("-","Aisne","Creuse","Dordogne","Essonne","Gironde ","...") var segdsubcategorys_Salto=new Array("-","Andalucía","Asturias","Baleares","Canarios","Castillo y Leóna","Castilla-La Mancha","...") var segdsubcategorys_juanita=new Array("-","Salto","San Juanita","San Lois","La Rioja","La Pampa","...") var segdsubcategorys_Lois=new Array("-","Cali","Santamarta","Medellón","Cartagena","...") var segdsubcategorys_Rojo=new Array("-","Aisne","Cruse","Dordogne","Essonne","Gironde ","...") var segdsubcategorys_pom=new Array("-","Isla","Guaja","Durdu","Galdalf","Jacobo ","...") //función que cambia las subcategorys del select de subcategorys en función del país que se haya escogido en el select de país. function cambia_subcategory(){ //tomo el valor del select del category elegido var category category = document.f1.category[document.f1.category.selectedIndex].value //miro a ver si el category está definido if (category != 0) { //si estaba definido, entonces coloco las opciones de la subcategory correspondiente. //selecciono el array de subcategory adecuado mis_subcategorys=eval("subcategorys_" + category) //calculo el numero de subcategorys num_subcategorys = mis_subcategorys.length //marco el número de subcategorys en el select document.f1.subcategory.length = num_subcategorys //para cada subcategory del array, la introduzco en el select for(i=0;i<num_subcategorys;i++){ document.f1.subcategory.options[i].value=mis_subcategorys[i] document.f1.subcategory.options[i].text=mis_subcategorys[i] } }else{ //si no había subcategory seleccionada, elimino las subcategorys del select document.f1.subcategory.length = 1 //coloco un guión en la única opción que he dejado document.f1.subcategory.options[0].value = "-" document.f1.subcategory.options[0].text = "-" } //marco como seleccionada la opción primera de subcategory document.f1.subcategory.options[0].selected = true } //función que cambia las subcategorys del select de subcategorys en función del país que se haya escogido en el select de país. function cambia_segdsubcategory(){ //tomo el valor del select del category elegido var subcategory category = document.f1.subcategory[document.f1.subcategory.selectedIndex].value //miro a ver si el category está definido if (subcategory != 0) { //si estaba definido, entonces coloco las opciones de la segdsubcategory correspondiente. //selecciono el array de segdsubcategory adecuado mis_segdsubcategorys=eval("segdsubcategorys_" + subcategory) //calculo el numero de segdsubcategorys num_segdsubcategorys = mis_segdsubcategorys.length //marco el número de segdsubcategorys en el select document.f1.segdsubcategory.length = num_segdsubcategorys //para cada segdsubcategory del array, la introduzco en el select for(i=0;i<num_segdsubcategorys;i++){ document.f1.segdsubcategory.options[i].value=mis_segdsubcategorys[i] document.f1.segdsubcategory.options[i].text=mis_segdsubcategorys[i] } }else{ //si no había segdsubcategory seleccionada, elimino las segdsubcategorys del select document.f1.segdsubcategory.length = 1 //coloco un guión en la única opción que he dejado document.f1.segdsubcategory.options[0].value = "-" document.f1.segdsubcategory.options[0].text = "-" } //marco como seleccionada la opción primera de subcategory document.f1.segdsubcategory.options[0].selected = true } </script>
· Los códigos deben ir en etiquetas GeSHi
· Esto va en desarrollo web (movido)
>aquí las reglas del foro
-Engel Lex