Es frecuente que necesitemos que al elegir un elemento de una lista desplegable o combo box una segunda lista desplegable o combo box se filtre con datos de acuerdo a la elección tomada en el primer combo box.
En este ejemplo usamos programación con JavaScript usando departamentos y municipios de Guatemala, al elegir un departamento la segunda lista desplegable mostrará los municipios de este departamento, el código completo de la pagina se pone a continuación
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<script>
function cargardepartamentos() {
var array = ["GUATEMALA","EL PROGRESO","SACATEPEQUEZ","CHIMALTENANGO","ESCUINTLA","SANTA ROSA","SOLOLA","TOTONICAPAN","QUETZALTENANGO","SUCHITEPEQUEZ","RETALHULEU","SAN MARCOS","HUEHUETENANGO","QUICHE","BAJA VERAPAZ","ALTA VERAPAZ","PETEN","IZABAL","ZACAPA","CHIQUIMULA","JALAPA","JUTIAPA"];
array.sort();
addOptions("departamento", array);
}
//Función para agregar opciones a un <select>.
function addOptions(domElement, array) {
var selector = document.getElementsByName(domElement)[0];
for (departamento in array) {
var opcion = document.createElement("option");
opcion.text = array[departamento];
// Añadimos un value a los option para hacer mas facil escoger los municipios
opcion.value = array[departamento].toLowerCase()
selector.add(opcion);
}
}
function cargarmunicipios() {
// Objeto de departamentos con municipios
var listamunicipios = {
guatemala: ["GUATEMALA","SANTA CATARINA PINULA","SAN JOSE PINULA","SAN JOSE DEL GOLFO","PALENCIA","CHINAUTLA","SAN PEDRO AYAMPUC","MIXCO","SAN PEDRO SACATEPEQUEZ","SAN JUAN SACATEPEQUEZ","SAN RAYMUNDO","CHUARRANCHO","FRAIJANES","AMATITLAN","VILLA NUEVA","VILLA CANALES","SAN MIGUEL PETAPA"],
'el progreso': ["GUASTATOYA","MORAZAN","SAN AGUSTIN ACASAGUASTLAN","SAN CRISTOBAL ACASAGUASTLAN","EL JICARO","SANSARE","SANARATE","SAN ANTONIO LA PAZ"],
sacatepequez: ["ANTIGUA","JOCOTENANGO","PASTORES","SUMPANGO","SANTO DOMINGO XENACOJ","SANTIAGO SACATEPEQUEZ","SAN BARTOLOME MILPAS ALTAS","SAN LUCAS SACATEPEQUEZ","SANTA LUCIA MILPAS ALTAS","MAGDALENA MILPAS ALTAS","SANTA MARIA DE JESUS","CIUDAD VIEJA","SAN MIGUEL DUENAS","ALOTENANGO","SAN ANTONIO AGUAS CALIENTES","SANTA CATARINA BARAHONA"],
chimaltenango: ["CHIMALTENANGO","SAN JOSE POAQUIL","SAN MARTIN JILOTEPEQUE","SAN JUAN COMALAPA","SANTA APOLONIA","TECPAN GUATEMALA","PATZUN","SAN MIGUEL POCHUTA","PATZICIA","SANTA CRUZ BALANYA","ACATENANGO","SAN PEDRO YEPOCAPA","SAN ANDRES ITZAPA","PARRAMOS","ZARAGOZA","EL TEJAR"],
escuintla: ["ESCUINTLA","SANTA LUCIA COTZUMALGUAPA","LA DEMOCRACIA","SIQUINALA","MASAGUA","TIQUISATE","LA GOMERA","GUANAGAZAPA","SAN JOSE","IZTAPA","PALIN","SAN VICENTE PACAYA" ],
'santa rosa': ["CUILAPA","BARBERENA","SANTA ROSA DE LIMA","CASILLAS","SAN RAFAEL LAS FLORES","ORATORIO","SAN JUAN TECUACO","CHIQUIMULILLA","TAXISCO","SANTA MARIA IXHUATAN","GUAZACAPAN","SANTA CRUZ NARANJO","municipio NUEVO VIÑAS","NUEVA SANTA ROSA"],
solola: ["SOLOLA","SAN JOSE CHACAYA","SANTA MARIA VISITACION","SANTA LUCIA UTATLAN","NAHUALA","SANTA CATARINA IXTAHUACAN","SANTA CLARA LA LAGUNA","CONCEPCION","SAN ANDRES SEMETABAJ","PANAJACHEL","SANTA CATARINA PALOPO","SAN ANTONIO PALOPO","SAN LUCAS TOLIMAN","SANTA CRUZ LA LAGUNA","SAN PABLO LA LAGUNA","SAN MARCOS LA LAGUNA","SAN JUAN LA LAGUNA","SAN PEDRO LA LAGUNA","SANTIAGO ATITLAN"],
totonicapan: ["TOTONICAPAN","SAN CRISTOBAL TOTONICAPAN","SAN FRANCISCO EL ALTO","SAN ANDRES XECUL","MOMOSTENANGO","SANTA MARIA CHIQUIMULA","SANTA LUCIA LA REFORMA","SAN BARTOLO AGUAS CALIENTES"],
quetzaltenango: ["QUETZALTENANGO","SALCAJA","OLINTEPEQUE","SAN CARLOS SIJA","SIBILIA","CABRICAN","CAJOLA","SAN MIGUEL SIGUILA","SAN JUAN OSTUNCALCO","SAN MATEO","CONCEPCION CHIQUIRICHAPA","SAN MARTIN SACATEPEQUEZ","ALMOLONGA","CANTEL","HUITAN","ZUNIL","COLOMBA COSTA CUCA","SAN FRANCISCO LA UNION","EL PALMAR","COATEPEQUE","GENOVA COSTA CUCA","FLORES COSTA CUCA","LA ESPERANZA","PALESTINA DE LOS ALTOS"],
suchitepequez: ["MAZATENANGO","CUYOTENANGO","SAN FRANCISCO ZAPOTITLAN","SAN BERNARDINO","SAN JOSE EL IDOLO","SANTO DOMINGO SUCHITEPEQUEZ","SAN LORENZO","SAMAYAC","SAN PABLO JOCOPILAS","SAN ANTONIO SUCHITEPEQUEZ","SAN MIGUEL PANAM","SAN GABRIEL","CHICACAO","PATULUL","SANTA BARBARA","SAN JUAN BAUTISTA","SANTO TOMAS LA UNION","ZUNILITO","municipio NUEVO","RIO BRAVO"],
retalhuleu: ["RETALHULEU","SAN SEBASTIAN","SANTA CRUZ MULUA","SAN MARTIN ZAPOTITLAN","SAN FELIPE","SAN ANDRES VILLA SECA","CHAMPERICO","NUEVO SAN CARLOS","EL ASINTAL"],
'san marcos': ["SAN MARCOS","SAN PEDRO SACATEPEQUEZ","SAN ANTONIO SACATEPEQUEZ","COMITANCILLO","SAN MIGUEL IXTAHUACAN","CONCEPCION TUTUAPA","TACANA","SIBINAL","TAJUMULCO","TEJUTLA","SAN RAFAEL PIE DE LA CUESTA","NUEVO PROGRESO","EL TUMBADOR","SAN JOSE EL RODEO","MALACATAN","CATARINA","AYUTLA (TECUN UMAN)","OCOS","SAN PABLO","EL QUETZAL","LA REFORMA","PAJAPITA","IXCHIGUAN","SAN JOSE OJETENAN","SAN CRISTOBAL CUCHO","SIPACAPA","ESQUIPULAS PALO GORDO","RIO BLANCO","SAN LORENZO"],
huehuetenango: ["HUEHUETENANGO","CHIANTLA","MALACATANCITO","CUILCO","NENTON","SAN PEDRO NECTA","JACALTENANGO","SAN PEDRO SOLOMA","SAN ILDEFONSO IXTAHUACAN","SANTA BARBARA","LA LIBERTAD","LA DEMOCRACIA","SAN MIGUEL ACATAN","SAN RAFAEL LA INDEPENDENCIA","TODOS SANTOS CUCHUMATAN","SAN JUAN ATITAN","SANTA EULALIA","SAN MATEO IXTATAN","COLOTENANGO","SAN SEBASTIAN HUEHUETENANGO","TECTITAN","CONCEPCION HUISTA","SAN JUAN IXCOY","SAN ANTONIO HUISTA","SAN SEBASTIAN COATAN","SANTA CRUZ BARILLAS","AGUACATAN","SAN RAFAEL PETZAL","SAN GASPAR IXCHIL","SANTIAGO CHIMALTENANGO","SANTA ANA HUISTA","UNIÓN CANTINIL"],
quiche: ["SANTA CRUZ DEL QUICHE","CHICHE","CHINIQUE","ZACUALPA","CHAJUL","STO TOMAS CHICHICASTENANGO","PATZITE","SAN ANTONIO ILOTENANGO","SAN PEDRO JOCOPILAS","CUNEN","SAN JUAN COTZAL","JOYABAJ","NEBAJ","SAN ANDRES SAJCABAJA","SAN MIGUEL USPANTAN","SACAPULAS","SAN BARTOLOME JOCOTENANGO","CANILLA","CHICAMAN","IXCAN","PACHALUN","PLAYA GRANDE"],
'baja verapaz': ["SALAMA","SAN MIGUEL CHICAJ","RABINAL","CUBULCO","GRANADOS","SANTA CRUZ EL CHOL","SAN JERONIMO","PURULHA"],
'alta verapaz': ["COBAN","SANTA CRUZ VERAPAZ","SAN CRISTOBAL VERAPAZ","TACTIC","TAMAHU","SAN MIGUEL TUCURU","PANZOS","SENAHU","SAN PEDRO CARCHA","SAN JUAN CHAMELCO","LANQUIN","SANTA MARIA CAHABON","CHISEC","CHAHAL","FRAY BARTOLOME DE LAS CASAS","LA TINTA","RAXRUHÁ"],
peten: ["FLORES","SAN JOSE","SAN BENITO","SAN ANDRES","LA LIBERTAD","SAN FRANCISCO","SANTA ANA","DOLORES","SAN LUIS","SAYAXCHE","MELCHOR DE MENCOS","POPTUN"],
izabal: ["PUERTO BARRIOS","LIVINGSTON","EL ESTOR","MORALES","LOS AMATES"],
zacapa: ["ZACAPA","ESTANZUELA","RIO HONDO","GUALAN","TECULUTAN","USUMATLAN","CABANAS","SAN DIEGO","LA UNION","HUITE"],
chiquimula: ["CHIQUIMULA","SAN JOSE LA ARADA","SAN JUAN LA ERMITA","JOCOTAN","CAMOTAN","OLOPA","ESQUIPULAS","CONCEPCION LAS MINAS","QUEZALTEPEQUE","SAN JACINTO","IPALA"],
jalapa: ["JALAPA","SAN PEDRO PINULA","SAN LUIS JILOTEPEQUE","SAN MANUEL CHAPARRON","SAN CARLOS ALZATATE","MONJAS","MATAQUESCUINTLA"],
jutiapa: ["JUTIAPA","EL PROGRESO","SANTA CATARINA MITA","AGUA BLANCA","ASUNCION MITA","YUPILTEPEQUE","ATESCATEMPA","JEREZ","EL ADELANTO","ZAPOTITLAN","COMAPA","JALPATAGUA","CONGUACO","MOYUTA","PASACO","SAN JOSE ACATEMPA","QUESADA"]
}
var departamentos = document.getElementById('departamento')
var municipios = document.getElementById('municipio')
var departamentoSeleccionada = departamentos.value
// Se limpian los municipios
municipios.innerHTML = '<option value="">SELECCIONE UN MUNICIPIO...</option>'
if(departamentoSeleccionada !== ''){
// Se seleccionan los municipios y se ordenan
departamentoSeleccionada = listamunicipios[departamentoSeleccionada]
departamentoSeleccionada.sort()
// Insertamos los municipios
departamentoSeleccionada.forEach(function(municipio){
opcion = document.createElement('option')
opcion.value = municipio
opcion.text = municipio
municipios.add(opcion)
});
}
}
// Iniciar la carga de departamentos solo para comprobar que funciona
</script>
</head>
<body onload="cargardepartamentos();">
<table>
<tr>
<td align=right>departamento:</td>
<td align=left colspan=3>
<!-- Añadido onchange para cargar los municipios -->
<select name="departamento" id="departamento" onchange="cargarmunicipios();" class="form-control">
<option value="">SELECCIONE UN DEPARTAMENTO...</option>
</select>
</td>
</tr>
<tr>
<td align=right>municipio:</td>
<td align=left colspan=3>
<select name="municipio" id="municipio" class="form-control">
<option value="">SELECCIONE UN MUNICIPIO...</option>
</select>
</td>
</tr>
</table>
</body>
</html>
Mostrando entradas con la etiqueta HTML. Mostrar todas las entradas
Mostrando entradas con la etiqueta HTML. Mostrar todas las entradas
martes, 24 de abril de 2018
miércoles, 22 de junio de 2016
sábado, 28 de julio de 2012
Codigo HTML Para Una Lista Desplegable con los Paises del Mundo
A veces se necesita un
formulario en una página web, con una lista desplegable con los países del
mundo, aquí el script HTML.
<select name="pais">
<option value="AF">Afganistán</option>
<option value="AL">Albania</option>
<option value="DE">Alemania</option>
<option value="AD">Andorra</option>
<option value="AO">Angola</option>
<option value="AI">Anguilla</option>
<option value="AQ">Antártida</option>
<option value="AG">Antigua y Barbuda</option>
<option value="AN">Antillas Holandesas</option>
<option value="SA">Arabia Saudí</option>
<option value="DZ">Argelia</option>
<option value="AR">Argentina</option>
<option value="AM">Armenia</option>
<option value="AW">Aruba</option>
<option value="AU">Australia</option>
<option value="AT">Austria</option>
<option value="AZ">Azerbaiyán</option>
<option value="BS">Bahamas</option>
<option value="BH">Bahrein</option>
<option value="BD">Bangladesh</option>
<option value="BB">Barbados</option>
<option value="BE">Bélgica</option>
<option value="BZ">Belice</option>
<option value="BJ">Benin</option>
<option value="BM">Bermudas</option>
<option value="BY">Bielorrusia</option>
<option value="MM">Birmania</option>
<option value="BO">Bolivia</option>
<option value="BA">Bosnia y
Herzegovina</option>
<option value="BW">Botswana</option>
<option value="BR">Brasil</option>
<option value="BN">Brunei</option>
<option value="BG">Bulgaria</option>
<option value="BF">Burkina Faso</option>
<option value="BI">Burundi</option>
<option value="BT">Bután</option>
<option value="CV">Cabo Verde</option>
<option value="KH">Camboya</option>
<option value="CM">Camerún</option>
<option value="CA">Canadá</option>
<option value="TD">Chad</option>
<option value="CL">Chile</option>
<option value="CN">China</option>
<option value="CY">Chipre</option>
<option
value="VA">Ciudad del Vaticano (Santa Sede)</option>
<option value="CO">Colombia</option>
<option value="KM">Comores</option>
<option value="CG">Congo</option>
<option
value="CD">Congo, República Democrática del</option>
<option value="KR">Corea</option>
<option
value="KP">Corea del Norte</option>
<option
value="CI">Costa de Marfíl</option>
<option value="CR">Costa Rica</option>
<option value="HR">Croacia (Hrvatska)</option>
<option value="CU">Cuba</option>
<option value="DK">Dinamarca</option>
<option value="DJ">Djibouti</option>
<option value="DM">Dominica</option>
<option value="EC">Ecuador</option>
<option value="EG">Egipto</option>
<option
value="SV">El Salvador</option>
<option
value="AE">Emiratos Árabes Unidos</option>
<option value="ER">Eritrea</option>
<option value="SI">Eslovenia</option>
<option value="ES" selected>España</option>
<option value="US">Estados Unidos</option>
<option value="EE">Estonia</option>
<option value="ET">Etiopía</option>
<option value="FJ">Fiji</option>
<option value="PH">Filipinas</option>
<option value="FI">Finlandia</option>
<option value="FR">Francia</option>
<option value="GA">Gabón</option>
<option value="GM">Gambia</option>
<option value="GE">Georgia</option>
<option value="GH">Ghana</option>
<option value="GI">Gibraltar</option>
<option value="GD">Granada</option>
<option value="GR">Grecia</option>
<option value="GL">Groenlandia</option>
<option value="GP">Guadalupe</option>
<option value="GU">Guam</option>
<option value="GT">Guatemala</option>
<option value="GY">Guayana</option>
<option value="GF">Guayana Francesa</option>
<option value="GN">Guinea</option>
<option value="GQ">Guinea Ecuatorial</option>
<option value="GW">Guinea-Bissau</option>
<option value="HT">Haití</option>
<option value="HN">Honduras</option>
<option value="HU">Hungría</option>
<option
value="IN">India</option>
<option
value="ID">Indonesia</option>
<option
value="IQ">Irak</option>
<option
value="IR">Irán</option>
<option
value="IE">Irlanda</option>
<option
value="BV">Isla Bouvet</option>
<option
value="CX">Isla de Christmas</option>
<option
value="IS">Islandia</option>
<option
value="KY">Islas Caimán</option>
<option
value="CK">Islas Cook</option>
<option
value="CC">Islas de Cocos o Keeling</option>
<option
value="FO">Islas Faroe</option>
<option
value="HM">Islas Heard y McDonald</option>
<option
value="FK">Islas Malvinas</option>
<option
value="MP">Islas Marianas del Norte</option>
<option
value="MH">Islas Marshall</option>
<option
value="UM">Islas menores de Estados Unidos</option>
<option
value="PW">Islas Palau</option>
<option
value="SB">Islas Salomón</option>
<option
value="SJ">Islas Svalbard y Jan Mayen</option>
<option
value="TK">Islas Tokelau</option>
<option
value="TC">Islas Turks y Caicos</option>
<option
value="VI">Islas Vírgenes (EEUU)</option>
<option
value="VG">Islas Vírgenes (Reino Unido)</option>
<option
value="WF">Islas Wallis y Futuna</option>
<option
value="IL">Israel</option>
<option
value="IT">Italia</option>
<option
value="JM">Jamaica</option>
<option
value="JP">Japón</option>
<option
value="JO">Jordania</option>
<option
value="KZ">Kazajistán</option>
<option
value="KE">Kenia</option>
<option
value="KG">Kirguizistán</option>
<option
value="KI">Kiribati</option>
<option
value="KW">Kuwait</option>
<option
value="LA">Laos</option>
<option
value="LS">Lesotho</option>
<option
value="LV">Letonia</option>
<option
value="LB">Líbano</option>
<option
value="LR">Liberia</option>
<option
value="LY">Libia</option>
<option
value="LI">Liechtenstein</option>
<option
value="LT">Lituania</option>
<option
value="LU">Luxemburgo</option>
<option
value="MK">Macedonia, Ex-República Yugoslava de</option>
<option
value="MG">Madagascar</option>
<option
value="MY">Malasia</option>
<option
value="MW">Malawi</option>
<option
value="MV">Maldivas</option>
<option
value="ML">Malí</option>
<option
value="MT">Malta</option>
<option
value="MA">Marruecos</option>
<option
value="MQ">Martinica</option>
<option
value="MU">Mauricio</option>
<option
value="MR">Mauritania</option>
<option
value="YT">Mayotte</option>
<option
value="MX">México</option>
<option
value="FM">Micronesia</option>
<option
value="MD">Moldavia</option>
<option
value="MC">Mónaco</option>
<option
value="MN">Mongolia</option>
<option
value="MS">Montserrat</option>
<option
value="MZ">Mozambique</option>
<option
value="NA">Namibia</option>
<option
value="NR">Nauru</option>
<option
value="NP">Nepal</option>
<option
value="NI">Nicaragua</option>
<option
value="NE">Níger</option>
<option
value="NG">Nigeria</option>
<option
value="NU">Niue</option>
<option
value="NF">Norfolk</option>
<option
value="NO">Noruega</option>
<option
value="NC">Nueva Caledonia</option>
<option
value="NZ">Nueva Zelanda</option>
<option
value="OM">Omán</option>
<option
value="NL">Países Bajos</option>
<option
value="PA">Panamá</option>
<option
value="PG">Papúa Nueva Guinea</option>
<option
value="PK">Paquistán</option>
<option
value="PY">Paraguay</option>
<option
value="PE">Perú</option>
<option
value="PN">Pitcairn</option>
<option
value="PF">Polinesia Francesa</option>
<option
value="PL">Polonia</option>
<option
value="PT">Portugal</option>
<option
value="PR">Puerto Rico</option>
<option
value="QA">Qatar</option>
<option
value="UK">Reino Unido</option>
<option
value="CF">República Centroafricana</option>
<option
value="CZ">República Checa</option>
<option
value="ZA">República de Sudáfrica</option>
<option
value="DO">República Dominicana</option>
<option
value="SK">República Eslovaca</option>
<option
value="RE">Reunión</option>
<option
value="RW">Ruanda</option>
<option
value="RO">Rumania</option>
<option
value="RU">Rusia</option>
<option
value="EH">Sahara Occidental</option>
<option
value="KN">Saint Kitts y Nevis</option>
<option
value="WS">Samoa</option>
<option
value="AS">Samoa Americana</option>
<option
value="SM">San Marino</option>
<option
value="VC">San Vicente y Granadinas</option>
<option
value="SH">Santa Helena</option>
<option
value="LC">Santa Lucía</option>
<option
value="ST">Santo Tomé y Príncipe</option>
<option value="SN">Senegal</option>
<option
value="SC">Seychelles</option>
<option
value="SL">Sierra Leona</option>
<option
value="SG">Singapur</option>
<option
value="SY">Siria</option>
<option
value="SO">Somalia</option>
<option
value="LK">Sri Lanka</option>
<option
value="PM">St Pierre y Miquelon</option>
<option
value="SZ">Suazilandia</option>
<option
value="SD">Sudán</option>
<option
value="SE">Suecia</option>
<option
value="CH">Suiza</option>
<option
value="SR">Surinam</option>
<option
value="TH">Tailandia</option>
<option
value="TW">Taiwán</option>
<option
value="TZ">Tanzania</option>
<option
value="TJ">Tayikistán</option>
<option
value="TF">Territorios franceses del Sur</option>
<option
value="TP">Timor Oriental</option>
<option
value="TG">Togo</option>
<option
value="TO">Tonga</option>
<option
value="TT">Trinidad y Tobago</option>
<option
value="TN">Túnez</option>
<option
value="TM">Turkmenistán</option>
<option
value="TR">Turquía</option>
<option
value="TV">Tuvalu</option>
<option
value="UA">Ucrania</option>
<option
value="UG">Uganda</option>
<option
value="UY">Uruguay</option>
<option
value="UZ">Uzbekistán</option>
<option
value="VU">Vanuatu</option>
<option
value="VE">Venezuela</option>
<option
value="VN">Vietnam</option>
<option
value="YE">Yemen</option>
<option
value="YU">Yugoslavia</option>
<option
value="ZM">Zambia</option>
<option
value="ZW">Zimbabue</option>
</select>
|
Suscribirse a:
Entradas (Atom)