elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  [Pregunta]: No funciona salto de línea en JAVACRIPT (+PHP)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Pregunta]: No funciona salto de línea en JAVACRIPT (+PHP)  (Leído 660 veces)
Leguim


Desconectado Desconectado

Mensajes: 672



Ver Perfil
[Pregunta]: No funciona salto de línea en JAVACRIPT (+PHP)
« en: 16 Febrero 2019, 13:44 pm »

Buenos días!
Me encontré con el siguiente problema y es que javascript no logra detectar los saltos de líneas de una variable o dato de PHP.

Explicando en que consiste el programa les podría decir que tengo una tabla en PHP donde se guarda el contenido de algo, va a almacenar un STRING luego al hacer click en un botón por ej, (Ver contenido)  va a mostrar dicho contenido, estaria enviando un parametro como el siguiente.

Código
  1. <?php
  2. $contenido = 'Este es el contenido'; // El dato lo tengo en la base de datos, no es una variable como esta.
  3.  
  4. ?>
  5. <button type="button" onclick="Mostrar_Contenido('<?php echo $contenido; ?>')">ver contenido</button>
  6.  

Basicamente al hacer esto JS me interpreta el código muy mal, es como que los saltos de línea dieran error,  busque y existen varias soluciones de las cuales intente pero sigue igual que antes.

El error que arroja es "invalid or unexpected token"

El dato original es 'fakdfj aksdjf askdjf askjdf ajsdkfasdkf asdjfasdfasdfaskdf asdkjf asdfasdfasdfasdjfka kqe WJKQWA RJKA JRKAW RAKWJ RAW jkads afksjdfaskdf jasdfka sdfjasdfkasjdfasdjkg asdk faskdjfa sdfkja dfja ksfajsdfasdfasdf fajksdf kajdsf akjsdf aksjdf ajkwrawqjka kjd \r\n\\n\r\nakjsdfa skdf jkasdfkasdfjkasd fkasdj faksdfafd ABC'

El código funciona correctamente ya que probé otros datos de tipo STRING que no tengan salto de línea y funciona bien.
Gracias desde ya!

ACTUALIZACIÓN:
Quizá esto les ayude a entender un poco mas el problema, como pueden ver acá en este STRING existen saltos de lineas y miren lo que pasan con el código JS



« Última modificación: 16 Febrero 2019, 14:04 pm por MiguelCanellas » En línea

EdePC
Moderador Global
***
Desconectado Desconectado

Mensajes: 1.749



Ver Perfil
Re: [Pregunta]: No funciona salto de línea en JAVACRIPT (+PHP)
« Respuesta #1 en: 16 Febrero 2019, 17:36 pm »

Saludos,

- Intenta escapando el salto de línea antes de pasárselo al javascript:

Código
  1. <button type="button" onclick="Mostrar_Contenido('<?php echo str_replace("\n","\\n",$contenido); ?>')">ver contenido</button>

- Fuente: https://stackoverflow.com/questions/13709517/escaping-line-break-endline-from-php-variable-for-javascript-usage


En línea

Leguim


Desconectado Desconectado

Mensajes: 672



Ver Perfil
Re: [Pregunta]: No funciona salto de línea en JAVACRIPT (+PHP)
« Respuesta #2 en: 16 Febrero 2019, 18:16 pm »

Saludos,

- Intenta escapando el salto de línea antes de pasárselo al javascript:

Código
  1. <button type="button" onclick="Mostrar_Contenido('<?php echo str_replace("\n","\\n",$contenido); ?>')">ver contenido</button>

- Fuente: https://stackoverflow.com/questions/13709517/escaping-line-break-endline-from-php-variable-for-javascript-usage

Gracias por contestar Ede! No me funciono el código sigue igual, para ver si el error venia de otro lado probé con el código que les mostre de ejemplo pero tampoco funciono. Lo dejó acá

Código
  1. <?php
  2. $variable = 'tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  3. quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  4. consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
  5. cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
  6. proident, sunt in culpa qui officia deserunt mollit anim id est laborum.';
  7. $variable = str_replace("\n","\\n",$variable);
  8. ?>
  9.  
  10. <script type="text/javascript">
  11. alert('<?php echo($variable); ?>');
  12. </script>
  13.  
En línea

Leguim


Desconectado Desconectado

Mensajes: 672



Ver Perfil
Re: [Pregunta]: No funciona salto de línea en JAVACRIPT (+PHP)
« Respuesta #3 en: 16 Febrero 2019, 19:06 pm »

Ya lo pude solucionar! Gracias igualmente, a casi me olvido acá les dejo el código ya solucionado por si a alguien mas le pasa esto, para que no tengan dolor de cabeza tratando de buscar la solución.  ;-)

Código
  1. <?php
  2. $variable = 'tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  3. quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  4. consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
  5. cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
  6. proident, sunt in culpa qui officia deserunt mollit anim id est laborum.';
  7. $variable = str_replace("\r\n","\\r\\n",$variable);
  8. ?>
  9.  
  10. <script type="text/javascript">
  11. alert('<?php echo($variable); ?>');
  12. </script>
  13.  
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
salto de línea en ficheros
Programación Visual Basic
AGRIPI 1 1,332 Último mensaje 25 Mayo 2006, 15:06 pm
por sch3m4
Salto de linea en Batch
Scripting
Jatt 2 11,133 Último mensaje 5 Enero 2007, 18:55 pm
por Jatt
Duda salto de línea
PHP
[KMT] 8 2,600 Último mensaje 1 Julio 2007, 13:01 pm
por eLank0
[python] Linea de salto.
Scripting
Meta 1 40,227 Último mensaje 1 Octubre 2010, 23:33 pm
por [L]ord [R]NA
Salto de línea
Desarrollo Web
bgnumis 2 2,170 Último mensaje 25 Junio 2018, 19:49 pm
por JUCA
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines