Bueno, paso a contarles el problemón que tengo con el Ajax. Resulta que yo quería innovar en mi web y decidí utilizar AJAX.
A veces, cuando uno realiza una operación o algo, necesita motrar una alerta en javascript (ya sabemos, <script>alert('')</script>). El problema es que no me acepta ningún script al mostrarse en la web.
Lo ejemplificaré porque soy pésimo para relatar estas cosas: Supongamos que yo quiero poner de favorito un artículo, entonces clickeo donde dice [Favorito], y debería aparecer una alerta diciendo que la opración se ha realizado con éxito.
El problema es que no lo hace.
Dejaré acá el script que tengo de AJAX así encuentro el error...
Código:
Ahí se encuentran dos Ajax, uno que muestra mediante la función insertar (un script que hace el innerHTML) y el otro que lo hace mediante eval.function makeAjax(){ var xmlhttp=false; try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; } } if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp = new XMLHttpRequest(); } return xmlhttp; } function setAjax(url,capa,valores,metodo, carga) { var ajax=makeAjax(); if(metodo.toUpperCase()=='POST'){ ajax.open ('POST', url, true); ajax.onreadystatechange = function() { if (ajax.readyState==1) { insertar(capa, carga); } else if (ajax.readyState==4){ if(ajax.status==200) { insertar(capa, ajax.responseText); } else if(ajax.status==404) { insertar(capa, "La dirección no existe."); } else { // } } } ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); ajax.send(valores); return; } if(metodo.toUpperCase()=='GET'){ ajax.open ('GET', url, true); ajax.onreadystatechange = function() { if (ajax.readyState==1) { insertar(capa, carga); } else if (ajax.readyState==4){ if(ajax.status==200){ insertar(capa, ajax.responseText); } else if(ajax.status==404) { insertar(capa, "La dirección no existe."); } else { // } } } ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); ajax.send(null); return } } function hideAjax(url, valores, metodo){ var ajax=makeAjax(); if(metodo.toUpperCase()=='POST'){ ajax.open ('POST', url, true); ajax.onreadystatechange = function() { if (ajax.readyState==1) { // } else if (ajax.readyState==4){ if(ajax.status==200) { eval(ajax.responseText); } else if(ajax.status==404) { // } else { // } } } ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); ajax.send(valores); return; } if(metodo.toUpperCase()=='GET'){ ajax.open ('GET', url, true); ajax.onreadystatechange = function() { if (ajax.readyState==1) { // } else if (ajax.readyState==4){ if(ajax.status==200){ eval(ajax.responseText); } else if(ajax.status==404) { // } else { // } } } ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); ajax.send(null); return } }
No sé dónde está el error... pero es recontra importante ya que estoy basando mucho de la web en el AJAX.
Saludos!