Hola amigos,
A ver si me dan una ayudita con este error de javascript.
La pagina lo que hace es que al darle click a una imagen este sin salir de la pagina ni refrescar inserta unos datos en la base de datos y la imagen a la cual le dimos click la cambia por otra imagen.
La pagina me funciona bien, pero en IE me manda el siguiente erro y no se porque, este error lo repite varias veces, aqui se lo cocolo:
Mensaje: 'obj.readyState' es nulo o no es un objeto
Línea: 52
Carácter: 5
Código: 0
URI: http://www.misitio.com/test/1.php
Alguno me puede ayudar a arreglar el code para que no me mande este error ?
Aqui les dejo la pagina completita y la linea 52 de error es esta:
"if (obj.readyState == 4) {" MUCHAS gracias de antemano:
Código HTML:
<html>
<head>
<script type="text/javascript">
var obj;
function ProcessXML(url,szDivID)
{
//INICIA codigo para insertar los datos en la BD
if (window.XMLHttpRequest) {
// obtain new object
obj = new XMLHttpRequest();
// set the callback function
obj.onreadystatechange = processChange;
// we will do a GET with the url; "true" for asynch
obj.open("GET", url, true);
// null for GET with native object
obj.send(null);
// IE/Windows ActiveX object
} else if (window.ActiveXObject) {
obj = new ActiveXObject("Microsoft.XMLHTTP");
if (obj) {
obj.onreadystatechange = processChange;
obj.open("GET", url, true);
// don't send null for ActiveX
obj.send();
}
} else {
alert("Your browser does not support AJAX");
}
//FINALIZA codigo para insertar los datos en la BD
// INICIA codigo para cambiar la imagen del div
if(document.layers) //NN4+
{
document.layers[szDivID].innerHTML= "<img src='/images/deletefav.gif' border='0' title='Remove Favorite' height='10' width='10' />";
}
else if(document.getElementById) //gecko(NN6) + IE 5+
{
var obj = document.getElementById(szDivID);
obj.innerHTML = "<img src='/images/deletefav.gif' border='0' title='Remove Favorite' height='10' width='10' />";
}
else if(document.all) // IE 4
{
document.all[szDivID].innerHTML = "<img src='/images/deletefav.gif' border='0' title='Remove Favorite' height='10' width='10' />";
}
// FINALIZA codigo para cambiar la imagen del div
}
function processChange() {
// 4 means the response has been returned and ready to be processed
if (obj.readyState == 4) {
// 200 means "OK"
if (obj.status == 200) {
alert("Listo Insertado");
// process whatever has been sent back here:
// anything else means a problem
} else {
alert("There was a problem in the returned data:\n");
}
}
}
</script>
<head>
<body>
<div id="12345" style="float:left; margin-right:4px;">
<a href ="javascript:ProcessXML('insertar.php?nombre=thalia&cancion=pielmorena&ruta=archivos/thalia','12345')" onMouseOver="this.style.cursor='pointer'"><img src="/images/fav.gif" border="0" title="Add to Favorite" height="10" width="10" /></a>
</div>
</body>
</html>