Foros del Web » Programando para Internet » Javascript » Frameworks JS »

http.responseText recibe un texto

Estas en el tema de http.responseText recibe un texto en el foro de Frameworks JS en Foros del Web. Tengo una pagina con un boton que al hacer click en el link server me regresa usando ajax el resultado de la pagina index.jsp Lo ...
  #1 (permalink)  
Antiguo 16/05/2011, 14:28
 
Fecha de Ingreso: enero-2009
Mensajes: 178
Antigüedad: 15 años, 11 meses
Puntos: 2
http.responseText recibe un texto

Tengo una pagina con un boton que al hacer click en el link server me regresa usando ajax el resultado de la pagina index.jsp
Lo que deseo es sencillamente que en el index.jsp pueda realizar una funcion que dependiendo de algun valor retorne un valor o el otro como por ejemplo

if(valor==1)
// me devuelva "HOLA"
else
// me devuelva "COmo estas"

Pero solo me lo permite si coloco esto <%="cualquierCOsa"%>

Coloco el codigo que estoy utilizando, fijense en el index.jsp que es lo que quiero modificar GRACIAS

INDEX.JSP<html>
<head>
</head>
<body>
<%="Hola"%>
</body>
</html>


PRUEBA.JSP<html>
<head>
<script src="ajax.js"></script>
</head>
<body>
<a onClick="sendRequest('GET','index.jsp')" href="#">Server:</a>
<div id="ajax_res">blalba.</div>
</body>
</html>

AJAX.JSfunction createRequestObject(){
var req;
if(window.XMLHttpRequest){

req = new XMLHttpRequest();
}
else if(window.ActiveXObject){
//For IE 5+
req = new ActiveXObject("Microsoft.XMLHTTP");
}
else{
}
return req;
}

//Make the XMLHttpRequest Object
var http = createRequestObject();

function sendRequest(method, url){
if(method == 'get' || method == 'GET'){
http.open(method,url);
http.onreadystatechange = handleResponse;
http.send(null);
}
}



function handleResponse(){
if(http.readyState == 4 && http.status == 200){
var response = http.responseText;
if(response){
alert(response);
document.getElementById("ajax_res").innerHTML = response;
}
}else{
document.getElementById("ajax_res").innerHTML = "<img src='images/loading.gif' width='32' height='32' />";
}
}
  #2 (permalink)  
Antiguo 16/05/2011, 15:03
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años, 7 meses
Puntos: 344
Respuesta: http.responseText recibe un texto

Tienes que usar las etiquetas <% %>, no <%= %>

Las primeras te permiten ejecutar código Java,

las segundas sólo evalúan expresiones simples y no pueden finalizar en ";"


En la página de wikipedia viene muy bien explicado:

http://es.wikipedia.org/wiki/JavaServer_Pages#Ejemplo_de_Documento_JSP
  #3 (permalink)  
Antiguo 16/05/2011, 15:07
 
Fecha de Ingreso: enero-2009
Mensajes: 178
Antigüedad: 15 años, 11 meses
Puntos: 2
Respuesta: http.responseText recibe un texto

Es extraÑo antes me daba error pero ya no, lo q hice fue:
<% String hola="como estas"; %>
<%=hola%>
y funciono :) ahora lo q quiero es pasar una variable
onClick="sendRequest('GET','index.jsp')" en el index pero no logro cerrar y abrir correctamente las comillas
onClick="sendRequest('GET','index.jsp?var=VARIABLE ')" no se como abrir y cerrar las comillas en la variable VARIABLE
  #4 (permalink)  
Antiguo 16/05/2011, 15:13
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años, 7 meses
Puntos: 344
Respuesta: http.responseText recibe un texto

Prueba a escapar las comillas con \:

Código Java:
Ver original
  1. onClick="sendRequest('GET','index.jsp?var=\'VARIABLE\'')"
  #5 (permalink)  
Antiguo 16/05/2011, 15:21
 
Fecha de Ingreso: enero-2009
Mensajes: 178
Antigüedad: 15 años, 11 meses
Puntos: 2
Respuesta: http.responseText recibe un texto

No me funciono :(
  #6 (permalink)  
Antiguo 16/05/2011, 15:25
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años, 7 meses
Puntos: 344
Respuesta: http.responseText recibe un texto

Pues si no me das más datos no vamos a poder hacer nada.


Has mirado que parámetros se mandan al servidor con Firebug (complemento para firefox) o si da errores de javascript (también con Firebug).

Etiquetas: ajax
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:29.