Foros del Web » Programando para Internet » ASP Clásico »

Variable demasiado grande

Estas en el tema de Variable demasiado grande en el foro de ASP Clásico en Foros del Web. Buenas, como no sé si el problema es javascript o ASP lo pongo en los 2 lados... Tengo el siguiente código: <% texto = request.form("texto") ...
  #1 (permalink)  
Antiguo 14/09/2004, 10:16
 
Fecha de Ingreso: marzo-2004
Mensajes: 36
Antigüedad: 20 años, 3 meses
Puntos: 0
Variable demasiado grande

Buenas, como no sé si el problema es javascript o ASP lo pongo en los 2 lados...

Tengo el siguiente código:
<%
texto = request.form("texto")
'Elimino todos los saltos de linea que tiene la cadena
texto = Replace (texto, vbCrLf, "")
%>

donde la variable texto recoge del formulario el código HTML de una página completa, lo que equivale a 700 líneas de divs, br, td, tr .... y hago el replace para eliminar todos los saltos de línea.

<script languaje="JavaScript">
pagina=<%=texto%>";
</script>

Después intento asignar esa variable en javascript pero me da un error.
Cuando veo el código fuente de la página veo que mi cadena es demasiado grande y hace saltos de línea por lo que me sale el error: ' Se esperaba ; '

¿Cómo podría asignar la variable texto a la variable pagina?

Venga, salu2 a todos y a ver si podeis echarme 1 mano.
Grace
__________________
Cepa
  #2 (permalink)  
Antiguo 14/09/2004, 10:52
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Lo de los saltos de línea, no lo sé.. ya los estás quitando al hacer el replace.
Igual creo que tendrías que hacer más replaces, para "escapar" posibles caracteres que interfieran con javascript.. como las comillas:

texto = Replace (texto, vbCrLf, "")
texto = Replace (texto, CHR(034), "/" & CHR(034))

Aunque no sé si hay otro que pueda joder, seguro que si.
__________________
...___...
  #3 (permalink)  
Antiguo 14/09/2004, 10:59
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 9 meses
Puntos: 381
'nas...

lo de hacer más replaces para el tema comillas es buena idea

Igual, el problema viene de que un string debe ir entre comillas y omite la de apertura en la variable pagina

Dejé respuesta en el javascript forum http://www.forosdelweb.com/showthrea...324#post800324

saludos
  #4 (permalink)  
Antiguo 14/09/2004, 11:22
 
Fecha de Ingreso: marzo-2004
Mensajes: 36
Antigüedad: 20 años, 3 meses
Puntos: 0
Tambien lo probé con las comillas dobles o simples y me seguía fallando.... se me olvido poneroslo :(

<script languaje="JavaScript">
pagina="<%=texto%>";
ó
pagina='<%=texto%>';
</script>

Voy a probar lo de usar más replaces a ver que tal... y ya os digo algo

thankx
__________________
Cepa
  #5 (permalink)  
Antiguo 14/09/2004, 11:34
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 9 meses
Puntos: 381
Si el contenido de la variable trae comillas te dará problemas en js, así que es buena idea lo de substituirlas también con el replace.

Te sugiero que, además de lo que te sugirió Al Zuwaga (lo escribí a la primera) le añadas esto

texto = replace(texto,"'","\'")

  #6 (permalink)  
Antiguo 14/09/2004, 11:44
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Ah, pero ¿con qué barra se escapa, tunait? (yo también lo escribí a la primera :p)
Con la / o con la \?

saludos
__________________
...___...
  #7 (permalink)  
Antiguo 14/09/2004, 11:50
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 9 meses
Puntos: 381
yujus...

se escapa con la \

Cita:
Iniciado por Al Zuwaga
yo también lo escribí a la primera :p
pero llevas más tiempo de práctica
  #8 (permalink)  
Antiguo 14/09/2004, 11:53
 
Fecha de Ingreso: marzo-2004
Mensajes: 36
Antigüedad: 20 años, 3 meses
Puntos: 0
Buenas,

con el código:
<%
texto = Replace (texto, vbCrLf, "")
texto = replace(texto,"'","\'")
%>
funciona perfectamente. Yo había puesto:

<script languaje="JavaScript">
texto = '<%=texto%>';
</script>

porque había visto que tenían comillas dobles y ninguna simple pero al decirme vosotros lo del replace de las simples volví a mirar (esta vez buscando y no a ojo) y había unas simples por ahí perdidas.

Gracias a ambos y como bien dicen: EL QUE SABE, SABE
y los que no, os lo preguntamos a vosotros

salu2
PD: se escapa con \
__________________
Cepa
  #9 (permalink)  
Antiguo 14/09/2004, 11:55
 
Fecha de Ingreso: marzo-2004
Mensajes: 36
Antigüedad: 20 años, 3 meses
Puntos: 0
Vaya, para una vez que iba a contestar algo que me sabía va Tunait y (como siempre) se adelanta.

jejjejeje

Enga, salu2
__________________
Cepa
  #10 (permalink)  
Antiguo 14/09/2004, 12:04
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 9 meses
Puntos: 381
Ops ...
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 02:09.