Buenos Días a Todos,
Estoy desarrollando una aplicación con Struts y Ajax y tengo problemas.
Por ejemplo estoy haciendo que cuando digiten el ID del Empleado vaya a consultar el Nombre del mismo por medio de AJAX. En Internet Explorer funciona de maravilla, pero a la hora de ejecutarlo en Firefox u Opera no funciona.
He puesto alerts para ver hasta donde llega y no se va al onreadystatechange, osea hasta el alert("Paso 4"). La petición al jsp funciona correctamente.
Si alguien me haría el favor de ayudarme, porque ya no se que hacer, llevo varios días en esto y nada.
A continuación les dejo el código
Código PHP:
Ver original<script type="text/javascript" language="javascript">
var ajax;
<%--
Este Script Valida que la Siembra esté activa.
--%>
function funcionCallback()
{
// Comprobamos si la peticion se ha completado (estado 4)
//alert("Paso 5");
if( ajax.readyState == 4 )
{
//alert("Paso 6");
// Comprobamos si la respuesta ha sido correcta (resultado HTTP 200)
if( ajax.status == 200 )
{
alert("Paso 7");
// Escribimos el resultado en la pagina HTML mediante DHTML
//document.all.PRUEBA.innerHTML = "<b>"+ajax.responseText+"</b>";
$('USPNAM').value = ajax.responseText;
//document.getElementByName("USPNAM").value = ajax.responseText;
alert("Paso 8");
}
}
}
function validarFolio()
{
// Creamos el control XMLHttpRequest segun el navegador en el que estemos
var xmlhttp=false;
try {
xmlhttp = new ActiveXObject("MSXML2.XMLHTTP");
//alert("Paso 1");
}
catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
//alert("Paso 1.1");
}
catch (E) {
xmlhttp = false;
//alert("Paso 1.2");
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
//alert("Paso 1.3");
}
// Almacenamos en el control al funcion que se invocara cuando la peticion
// cambie de estado
ajax = xmlhttp;
ajax.onreadystatechange = funcionCallback;
//alert("Paso 2");
// Enviamos la peticion
//alert("Paso 3");
ajax.open("POST", "validaFolio.jsp", false);
ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=ISO-8859-1');
ajax.send("EMPNUM="+document.all.USPFOL.value);
//alert("Paso 4");
}
</script>
</html>