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

Error al pasar texto con </br> a function

Estas en el tema de Error al pasar texto con </br> a function en el foro de Frameworks JS en Foros del Web. Hola, necesito pasar un texto que tiene </br> en medio a una function javascript, el problema es que esos caracteres los toma como invalidos y ...
  #1 (permalink)  
Antiguo 25/08/2013, 09:55
Avatar de ananda  
Fecha de Ingreso: enero-2012
Mensajes: 345
Antigüedad: 8 años, 9 meses
Puntos: 14
Error al pasar texto con </br> a function

Hola, necesito pasar un texto que tiene </br> en medio a una function javascript, el problema es que esos caracteres los toma como invalidos y no me deja ejecutar la function aludiendo a este problema así:

Uncaught SyntaxError: Unexpected token ILLEGAL

La function es esta:

Código HTML:
  function colorear(cuadro, culor, escrito) {
	document.getElementById('todoelcuadro'+cuadro).style.backgroundColor = culor;
	
	      $.ajax({
         url: 'colorido.php',
         data:'cuadro='+ cuadro +'&culor=' + culor + '&escrito=' + escrito,
         type: 'post',
         error: function(obj, obj2){
            alert('error');
         },
         success: function(data){
	      $("#paginap").load(location.href+" #paginap>*",function(){
                $("#crear").draggable();
		$(".divimg").draggable();
		inicio();
         }); 
              
         } 
      }); 
  }

Y para llamarla uso este botón:

<input type="button" onChange="javascript:colorear('<?php echo $iddiv?>',this.value,'<?php echo $texto?>');"> 
El problema viene en el $texto que, como ya he mencionado, tiene espacios guardados en la base de datos para que respete los saltos de línea. A ver si me podéis ayudar a resolver esto, muchas gracias compañeros de FDW.
__________________
Creador de Vipefy , una nueva red social con un punto de vista diferente de las relaciones sociales.
  #2 (permalink)  
Antiguo 27/08/2013, 05:25
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.603
Antigüedad: 18 años, 6 meses
Puntos: 1283
Respuesta: Error al pasar texto con </br> a function

Hola:

Con los datos que se envían sin los formularios normales, hay que escaparlos casi siempre (escape(escrito))...

¿Qué librería usas?

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 27/08/2013, 05:58
Avatar de ananda  
Fecha de Ingreso: enero-2012
Mensajes: 345
Antigüedad: 8 años, 9 meses
Puntos: 14
Respuesta: Error al pasar texto con </br> a function

Cita:
Iniciado por caricatos Ver Mensaje
Hola:

Con los datos que se envían sin los formularios normales, hay que escaparlos casi siempre (escape(escrito))...

¿Qué librería usas?

Saludos
Hola, gracias por responder, si te refieres a como inserto los datos a la base de datos lo hago así:

Código PHP:
...SET texto '".nl2br($escrito)."' ... 
Con la ayuda de al función nl2br, el problema es que imprime ese texto con </br> y eso no puede entrar en javascript, lo cual me inutiliza toda la función :S Ojalá puedas ayudarme, muchas gracias!
__________________
Creador de Vipefy , una nueva red social con un punto de vista diferente de las relaciones sociales.
  #4 (permalink)  
Antiguo 27/08/2013, 07:40
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.603
Antigüedad: 18 años, 6 meses
Puntos: 1283
Respuesta: Error al pasar texto con </br> a function

Hola:

Como no has indicado la librería que usas, hemos movido el tema al foro de Frameworks JS...

Sobre nl2br de php, tal vez debas usarlo solamente para mostrar el texto (podrías guardarlo sin ese uso)... aunque no termino de comprender que no entre con javascript... si usas inneHTML, genera un salto de línea...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 28/08/2013, 23:35
Avatar de ananda  
Fecha de Ingreso: enero-2012
Mensajes: 345
Antigüedad: 8 años, 9 meses
Puntos: 14
Respuesta: Error al pasar texto con </br> a function

Cita:
Iniciado por caricatos Ver Mensaje
Hola:

Como no has indicado la librería que usas, hemos movido el tema al foro de Frameworks JS...

Sobre nl2br de php, tal vez debas usarlo solamente para mostrar el texto (podrías guardarlo sin ese uso)... aunque no termino de comprender que no entre con javascript... si usas inneHTML, genera un salto de línea...

Saludos
Hola, he probado a guardarlo sin usar nl2br y luego sacarlo usando esto y nada. Aclaro que en la función llamo al texto sin el nl2br, es decir así:

Código PHP:
                            <a>Fondo:</a> <input type="color" value="" name="favcolor" id="favcolor" onChange="javascript:colorear('<?php echo $iddiv?>',this.value,'<?php echo nl2br($texto)?>');" >
Y luego para mostrar ese texto si que hago lo de
Código PHP:
echo nl2br($texto); 
Pues sigue sin funcionar, no lo entiendo. Me podrías explicar como lo harías con innerHTML? Gracias por la ayuda :)

EDITO: Creo que el problema no viene con los saltos de línea, sino en las comas de cuando envio el texto a la función javascript, lo digo porque me sale este error en la consola de Chrome:

Uncaught SyntaxError: Unexpected token ILLEGAL en línea 528

Y la línea 528 es esta:
Código PHP:
<a>Fondo:</a> <input type="color" value="" name="favcolor" id="favcolor" onChange="javascript:colorear('<?php echo $iddiv?>',this.value,'<?php echo $texto?>');" >
Además, señala la parte del '<?php echo $texto?>'. A ver si podeis ayudarme, muchas gracias.
__________________
Creador de Vipefy , una nueva red social con un punto de vista diferente de las relaciones sociales.

Última edición por ananda; 29/08/2013 a las 00:00

Etiquetas: ajax, function, input, javascript, php
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:48.