Foros del Web » Programando para Internet » Javascript »

No me funciona el salto de línea...

Estas en el tema de No me funciona el salto de línea... en el foro de Javascript en Foros del Web. Tengo esto: Cita: <FORM name=MiMenu style="float: center;"> <SELECT name=categorias style="width: 200px; font-family: Verdana,Arial; font-size: 11px; color: #FFFF99; background-color: #C84201; position:relative; float:center" onchange="window.location=MiMenu.categorias.option s[MiMenu.categorias.selectedIndex].value; tabindex=1"> <OPTION ...
  #1 (permalink)  
Antiguo 16/03/2006, 17:14
 
Fecha de Ingreso: junio-2003
Ubicación: Sevilla
Mensajes: 210
Antigüedad: 20 años, 10 meses
Puntos: 1
Pregunta No me funciona el salto de línea...

Tengo esto:

Cita:
<FORM name=MiMenu style="float: center;">
<SELECT name=categorias style="width: 200px; font-family: Verdana,Arial; font-size: 11px; color: #FFFF99; background-color: #C84201; position:relative; float:center" onchange="window.location=MiMenu.categorias.option s[MiMenu.categorias.selectedIndex].value; tabindex=1">
<OPTION selected>Categorías...</OPTION>
<OPTION value="/categoria1.html">Categoria 1</OPTION>
<OPTION value="/categoria2.html">Categoria 2</OPTION>
<OPTION..... etc......
<OPTION value="JavaScript:alert('No está permitido incluir enlaces en esta categoría.\nSelecciona una de sus sub-categorías.')">Categoria 9</OPTION>
<OPTION..... etc......
</SELECT>
</FORM>
El salto de línea \n no me funciona.

¿Por qué ocurre esto?...

Saludos.
__________________
dominioslibres.info
  #2 (permalink)  
Antiguo 17/03/2006, 07:21
Avatar de javiermil  
Fecha de Ingreso: agosto-2004
Mensajes: 509
Antigüedad: 19 años, 8 meses
Puntos: 2
Hola, qué es lo que hace el código. Lo he copiado y a mí me funciona tu línea. Prueba a poner el ';' al final del alert, no es eso pero ponlo. Y dime qué es lo que hace y si puedes pega aqui el form entero. Saludos
  #3 (permalink)  
Antiguo 17/03/2006, 10:15
 
Fecha de Ingreso: junio-2003
Ubicación: Sevilla
Mensajes: 210
Antigüedad: 20 años, 10 meses
Puntos: 1
El código es básicamente cómo lo he expuesto. Entero sería demasiado extenso. Sirve para que al elegir una opción de un desplegable te lleve directamante a una página determinada. Lo tengo puesto en mi directorio http://directorio.compartimos.net/ para que los usuarios elijan la categoría en dónde quieren dar de alta su web.

He probado a poner el ";" al final del alert y tampoco da resultado.
__________________
dominioslibres.info
  #4 (permalink)  
Antiguo 02/08/2006, 03:45
 
Fecha de Ingreso: agosto-2006
Mensajes: 1
Antigüedad: 17 años, 8 meses
Puntos: 0
Bueno, supongo, a juzgar por el tiempo que hace que se posteó esta pregunta que Talle ya lo habrá resuelto, pero pongo aquí la respuesta para el que, como yo, llegue aquí con el mismo problema.


Yo resolví un caso parecido escapando dos veces la "n", es decir, usando "\\n" en lugar "\n".

En mi caso el motivo era que estaba usando el salto de linea dentro de un echo de php. Algo así:


echo "<script language='javascript'>alert(\"Hola\nAdios\");</script>";


Esto no funciona porque, al interpretar el php la linea, genera la siguiente en el html:


<script language='javascript'>alert("Hola
Adios")</script>


es decir, entre el "Hola" y el "Adios" hay un salto de linea "de verdad", no un "\n", que es lo que el alert necesitaría para poder interpretarlo correctamente.

Para resolverlo, hay que escapar la "\", para que no la interprete como escape de la "n", sino como una simple "barra invertida". Al hacer


echo "<script language='javascript'>alert(\"Hola\\nAdios\");</script>";


en html se genera


<script language='javascript'>alert("Hola\nAdios")</script>


y, ahora sí, sale un alert como el que queríamos: "Hola" en una línea y "Adiós" en otra.


Otra posibilidad en este caso es meter el mensaje del alert entre comillas simples, lo que evita que PHP interprete esa cadena. Es decir, lo siguiente:


echo "<script language='javascript'>alert('Hola\nAdios');</script>";


que genera exactamente lo mismo


<script language='javascript'>alert("Hola\nAdios")</script>


Nótese que el propio PHP cambia las comillas simples por dobles automaticamente, ya que en javascript las simples son para caracteres y las dobles para strings.

En fin, espero haber ayudado a alguien. Saludos!
  #5 (permalink)  
Antiguo 31/08/2006, 14:59
 
Fecha de Ingreso: junio-2003
Ubicación: Sevilla
Mensajes: 210
Antigüedad: 20 años, 10 meses
Puntos: 1
Por fin!!!...
Me ha funcionado perfectamente con \\n.

Un saludo y muchísimas gracias pepajul.
__________________
dominioslibres.info
  #6 (permalink)  
Antiguo 25/07/2007, 13:45
 
Fecha de Ingreso: julio-2007
Mensajes: 1
Antigüedad: 16 años, 9 meses
Puntos: 0
De acuerdo Re: No me funciona el salto de línea...

Podría darse el caso en que por el uso de las funciones addslashes y stripslashes de php, pudieras requerir escapar doblemente todo:

\\\\n




Cita:
Iniciado por talle Ver Mensaje
Por fin!!!...
Me ha funcionado perfectamente con \\n.

Un saludo y muchísimas gracias pepajul.
  #7 (permalink)  
Antiguo 27/08/2008, 08:13
 
Fecha de Ingreso: agosto-2008
Mensajes: 6
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: No me funciona el salto de línea...

Buscando sobre el tema me tope con la misma problematica, en javascript no sabia como hacer salto de línea, aqui dan algunas soluciones pero no me funciono ninguna, bueno, lo que yo hice fue "<br>" de esta forma el script me manda una linea como si fuera directo al html y lo toma como html.
Bueno pues esta es otra opcion igual y le sirve a otras personas.

Gracias a todos los colaboradores
  #8 (permalink)  
Antiguo 02/02/2010, 15:18
 
Fecha de Ingreso: febrero-2010
Mensajes: 1
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: No me funciona el salto de línea...

Hola gente... soy nueva en esto de los foros.
Pero qeuria agradecer el comentario ya que me sirvio mucho!
Gracias!
Ceci.
  #9 (permalink)  
Antiguo 18/03/2010, 04:42
 
Fecha de Ingreso: julio-2009
Mensajes: 53
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: No me funciona el salto de línea...

Hola es un tema viejo pero, se me había olvidado, y buscando en mis propios script porque sabia que lo tenia aca pongo lo que me pasó. No me hacia el salto de linea en un echo cuando ponia asi.
echo 'hola '+variable+' \n';

y me empezo a funcionar cuando puse al ultimo comillas dobles.

echo 'hola'+variables+" \n";

Por si le sirve a alguien. Gracias Saludos
  #10 (permalink)  
Antiguo 23/06/2010, 10:30
Avatar de juanchupin  
Fecha de Ingreso: abril-2007
Ubicación: MedellÃ*n, Antioquia, Colombia
Mensajes: 43
Antigüedad: 17 años
Puntos: 3
De acuerdo Respuesta: No me funciona el salto de línea...

Muchas Gracias a mi me funciono perfecto el \\n muy buen aporte gracias.

estaba que me enloquecia porque no me funcionaba con \n
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 10:21.