2010-06-22 13 views
6

Ho para almacenar texto de varias líneas en una variable de javascript;almacenar texto de varias líneas en una variable de JavaScript

Estoy usando PHP para asignar valor a la variable javascript.

favor ver un ejemplo de código siguiente

<html> 
<head> 
<title> New Document </title> 
<?php 

    $foo = " this is a 
       multiline statement"; 
?> 

<script> 
    bar = '<?php print $foo;?>'; 
    alert(bar); 
</script> 
</head> 
    <body> 
</body> 
</html> 

no quiero perder ninguna characters.How de espacio en blanco se puede hacer esto?

+0

duplicados de http://stackoverflow.com/questions/168214/pass-a-php-string-a-javascript-variable-including-escaping-newlines parece –

Respuesta

1

De this answer: <?php echo json_encode($foo); ?> (PHP> = 5.2)

1

Usa \n donde quieras romper la línea.

<html> 
<head> 
<title> New Document </title> 
<?php 

    $foo = " this is a \n 
       multiline statement"; 
?> 

<script> 
    bar = '<?php print $foo;?>'; 
    alert(bar); 
</script> 
</head> 
    <body> 
</body> 
</html> 

Si desea enviar el texto al navegador, tendrá que utilizar <br /> en lugar de \n.

Más información:

http://www.c-point.com/javascript_tutorial/special_characters.htm

3

Lamentablemente, es un poco molesto, ya que no puede hacerlo de esa manera. Vas a tener que hacerlo de esta manera:

var str = [ 
    "Hello, this is a  \n" 
    "multiline\n", 
    "  string." 
].join(""); 

O, usando un truco similar,

var str = [ 
    "Hello, this ", 
    "  is a multiline ", 
    "string separated by new lines ", 
    " with each array index" 
].join("\n"); 
0

probar este

var JsString = "<?php 
echo str_replace(array("\n","\r","\r\n"),'','YOUR 
MULTI LINE 
STRING');?>"; 
Cuestiones relacionadas