【问题标题】:jquery textarea set value but \n doesn't workjquery textarea 设置值但 \n 不起作用
【发布时间】:2020-02-26 10:39:57
【问题描述】:

我正在使用 codeigniter,控制器发送一个值来查看(我想在 textarea 中显示它)。
该值包含断线 \n,因为数据是使用 textarea 标签输入的。
我正在使用 jquery 来读取它的数据。我没有在 html 部分阅读它(这将完美地工作),因为我很容易识别和维护每个功能,如删除部分/元素或添加部分/元素。
我一直在寻找任何类似的问题,但没有一个有效。
所以这是我的代码:

<script>
function init()
{
    var render = '<textarea required id="some_id"><?= $test ?></textarea>
    $('#some_div').html(render);
}
</script>

所以有一个错误,结果在我的控制台上看起来像这样:

所以有断线,我猜问题出在断线,因为当声明一个字符串值时,它需要 '+ 在它的末尾。
所以我尝试添加它,这是我的代码。

<script>
function init()
{
    <?php

        $text = $some_data_from_controller;
        $breaks = array("\r\n");  
        $test = str_ireplace($breaks, "'+\n'", $text);  

    ?>

    var render = '<textarea required id="some_id"><?= $test ?></textarea>';
    $('#some_div').html(render);
}
</script>

这是在我的控制台上:

所以没有出现错误。但断线不起作用。这是我网络上的结果:

【问题讨论】:

    标签: jquery html textarea newline


    【解决方案1】:

    我认为您的错误是混合使用 javascript 语法和 php 语法。 Javascript 语法没有''。您不需要替换“\n”。将代码更改为:

    <script>
         function init(){
              $text = $some_data_from_controller;
              var render = '<textarea required id="some_id">'+$text+'</textarea>';
              $('#some_div').html(render);
          }
    </script>
    

    【讨论】:

    • 对不起,我已经编辑了我的帖子。它应该在一个php标签中。请再看一遍,谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-28
    • 1970-01-01
    • 2010-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多