将php变量分配给javascript变量后,两个单词之间的空格会丢失

时间:2010-06-30 13:42:09

标签: php javascript

我在php中创建了两个简单的文件。

第一个文件(即input.php):

  • 创建了一个包含一个文本框和一个提交按钮的表单
  • 我有一个文本框,用户将在此文本框中添加输入
  • 点击此表单后,一个提交按钮将被提交(使用后方法)

第二个文件(process.php):

  • 此处收到已发布的内容。
  • 将文本框(从$ _POST supergloble变量)值分配给javascript变量。
  • 并显示此javascript值

我在第一个文件中提交以下内容后观察到的内容

输入:

Hi this is test
Hello world

使用javascript值显示值后,我的内容低于内容

输出

 Hi this is testHello world.

'test'和'Hello'字样正在连接。

下面是我的代码来自process.php:

    <script type="text/javascript">

    var display = <?php echo $_POST['textareaInput']; ?>
    alert(display);

    </script>

我想知道php变量到javascript变量的赋值是否正确?

任何人都可以告诉我,这里的根本原因是什么?

提前致谢

3 个答案:

答案 0 :(得分:1)

您正在尝试将字符串分配给变量,因此您应将其标记为正确的字符串:

<script type="text/javascript">

var display = "<?php echo addslashes($_POST['textareaInput']); ?>";
alert(display);

</script>

答案 1 :(得分:0)

试试这个:

var display = "<?php echo addslashes($_POST['textareaInput']); ?>";

答案 2 :(得分:0)

你必须替换换行符,这是你可以做的(如果有的话也处理引号):

 $input = preg_replace("/\r?\n/", "\\n", addslashes($_POST['textareaInput']));