tengo un combo dinamico de departamento y municipio el cual al escoger por medio del evento change llamo una funcion por medio de ajax para armar el combo de municipios hasta ahi todo bien, hasta lo guarda bien, mi problema es cuando busco la informacion traigo el codigo del departamento y municipio, en el combo trae bien el codigo del depto pero no se dispara el onchange por lo tanto no me trae la lista de los municipios y por ende no me selecciona el codigo del municipio de ese departamento.
Estoy trabajando con JSON.
aqui pongo el codigo de la parte que no me sale, por favor colaborenmen, esto me tiene loco...
asi declare el combo:
<select name="cbDepartamento" id="cbDepartamento" class="texto" onchange="return MostrarMunicipios(event);">
Esto es el archivo js
Código Javascript :
function MostrarMunicipios() { tf = "MOSTRAR_MUNICIPIOS"; url="OperaEstudiantes.php?op="+5+"&CodiDept="+docu ment.form1.cbDepartamento.value; http.open("GET", url, true); http.onreadystatechange = handleHttpResponse; http.send(null); } function Buscar(e) { key=(document.all) ? e.keyCode : e.which; if (key < 48 || key > 57) { if(key == 13) { if(document.form1.txtNumeDocu.value == '') { document.getElementById('respuesta').style.display ='block'; document.getElementById('respuesta').innerHTML="Po r favor digite el Número de documento a buscar."; } else { tf ="BUSCAR"; url="OperaEstudiantes.php?op="+4+"&NumeDocu="+docu ment.form1.txtNumeDocu.value; http.open("GET", url, true); http.onreadystatechange = handleHttpResponse; http.send(null); } } if (key == 8) {return true;} else {return false;} } return true; } function handleHttpResponse() { if (http.readyState == 4) { results = eval(http.responseText); if(tf == "BUSCAR") { if(results == null) { document.form1.txtNumeDocu.readOnly = true; document.getElementById('respuesta').style.display ='block'; document.getElementById('respuesta').innerHTML="No se encontro el estudiante asociado a este número de documento." document.form1.btnGuardar.disabled = false; document.form1.btnModificar.disabled = true; } else { for(i = 0; i < results.length; i++) { dato = results[i]; document.form1.txtNumeDocu.readOnly = true; document.form1.cbDepartamento.value = dato.depCodigo; document.form1.cbDepartamento.onchange(); document.form1.cbMunicipio.value = dato.MunDepCodigo; document.form1.btnGuardar.disabled = true; document.form1.btnModificar.disabled = false; } } } if(tf == "MOSTRAR_MUNICIPIOS") { if (http.readyState == 4) { results = eval(http.responseText); if(results != null) { document.form1.cbMunicipio.options.length = 1; for(i = 0; i < results.length; i++) { dato = results[i]; var Municipios = new Option(dato.munNombre, dato.MunDepCodigo); document.form1.cbMunicipio.appendChild(Municipios) ; } } } } } }
Agradezco la ayuda y sugerencias que me puedan brindar.