![]() |
Porblema al recoger datos... Hola buenas, tengo una pequeña aplicacion donde uso AJAX, funciona todo perfectamente, la historia es que al final cuando hago urlencoded los datos a representar, NO ME SALEN LOS ESPCIOS ENTRE LAS PALABRAS. Les comento lo que hago a ver si alguien me echa una mano: El script AJAX es el siguiente: <SCRIPT TYPE="text/javascript"> var XMLHttpRequestObject = false; if (window.XMLHttpRequest) { XMLHttpRequestObject = new XMLHttpRequest(); } else if (window.ActiveXObject) { XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP"); } function pedDatos(fuenteDatos, divID,parametros) { if(XMLHttpRequestObject) { var obj = document.getElementById(divID); XMLHttpRequestObject.open("POST", fuenteDatos); XMLHttpRequestObject.setRequestHeader('content-type','application/x-www-form-urlencoded'); XMLHttpRequestObject.onreadystatechange = function() { if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) { txt=unescape(XMLHttpRequestObject.responseText); txt2=txt.replace(/\+/gi,""); obj.innerHTML = txt2; } } XMLHttpRequestObject.send(parametros); } } </script> En la página donde recojolos datos, simplemente hago una peticion PHP y al resultado le hago urlencoded($variable) El problema es que en dichas peticiones no aparecen los espacios entre las palabras ni signo '+' ni nada, todo seguido aparece. |
loading............. no uses UNESCAPE, usa na de estas funciona para decodificar la url que fue creada con urlencode. decodeURI(“encodedURI”) decodeURIComponent(“encodedURIComponent”) encodeURI(“URIString”) encodeURIComponent(“URIComponentString”) Código: txt=decodeURI(XMLHttpRequestObject.responseText);connection closed. |
Sal eun error de pagina Gracias por antenderme, el problema. cambie el codigo por que me dijo, y me sale el siguiente error en la página: El identificado URI no tiene una codificacion adecuada, tengo que cambiar algo mas que la funcion unescape¿? |
loading............. pega tu codigo final. connection closed. |
a ver que es lo que sigo haciendo mal... ahi va el script: <SCRIPT TYPE="text/javascript"> var XMLHttpRequestObject = false; if (window.XMLHttpRequest) { XMLHttpRequestObject = new XMLHttpRequest(); } else if (window.ActiveXObject) { XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP"); } function pedDatos(fuenteDatos, divID,parametros) { if(XMLHttpRequestObject) { var obj = document.getElementById(divID); XMLHttpRequestObject.open("POST", fuenteDatos); XMLHttpRequestObject.setRequestHeader('content-type','application/x-www-form-urlencoded'); XMLHttpRequestObject.onreadystatechange = function() { if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) { txt=decodeURI(XMLHttpRequestObject.responseText); txt2=txt.replace(/\+/gi,""); obj.innerHTML = txt2; } } XMLHttpRequestObject.send(parametros); } } </script> En la otra pagina sigo haciendo el urlencode de la variable PHP que necesito sacar con sus espacios |
loading........... bueno. 1. instala Mozilla Firefox, www.mozilla.org 2. instala esta extension FIREBUG : https://addons.mozilla.org/firefox/1843/ y bueno a partir de ahí puedes monitorear lo que envias o recibes con el objeto xmlhttprequest. Talvez tu cadena no está codificada como dices. connection closed. |
| La zona horaria es GMT -6. Ahora son las 10:33. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.