Comunidad de diseño web y desarrollo en internet online

Problema con Ajax recibo de informacion

Citar            
MensajeEscrito el 23 Mar 2012 09:27 pm
Cordial saludo.

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.

Por tattojk

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 23 Mar 2012 10:57 pm
Como detalle adicional al hacer pruebas con varios navegadores solo me funciona con google chrome :S en los demas no :(

Por tattojk

1 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.