使用JQuery通过Ajax Post向服务器发送请求时删除新行

6 php ajax jquery post

我正在尝试将Ajax与JQuery一起使用,我想要做的就是使用Ajax将多行文本框值发送到php.

我正在使用该代码,它将txtAnswer值发送给php,不幸的是,它从数据中删除了新行(\n).我怎样才能解决这个问题......提前谢谢.

$.post(
    'post-answer.php', 
     {
        answer: $("#txtAnswer").val(),
        qid: <?= $question_ID ?>
     },
     function (ajaxResponse) {
        $('#answers').html(ajaxResponse)
     }
   );
Run Code Online (Sandbox Code Playgroud)

小智 6

尝试: escape( $("#txtAnswer").val() )

= - )

  • 不推荐使用Escape:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/escape (2认同)

Gab*_*osa 3

你确定\n被删除了吗?如果将其放入 php 文件中会发生什么:

<?php
print_r($_REQUEST['answer']);
?> 
Run Code Online (Sandbox Code Playgroud)

使用 firebug 你可以看到输出并确定是否\n存在。

我从来没有听说过 jquery 或原型删除\n

请记住,如果您想以 html 格式显示新行,您需要将它们转换为<br/>. 我认为你正在尝试这样做。

您可以使用nr2br来执行此操作。