3

我正在尝试将数据库中的数据插入到 textarea 中。我不知道如何制作新的线条。我正在使用 jquery 的 val() 函数来设置 textarea 内容。我放了 \n 但它只是显示在 textarea 中而不是换行符。我也试过 \r\n 得到相同的结果。

更新

好的,我注意到如果我只是在它起作用的 val() 函数中用 \n 硬编码一个字符串。所以问题一定出在我通过 ajax 从 php 返回的字符串的某个地方。我正在使用 $.ajax 调用从 mysql 获取值的 PHP。关于出了什么问题的任何想法?

HTML

<textarea id='topContent' class='divContent' rows='8'></textarea>

JAVASCRIPT

<script>
$('#dialogDiv').on('submit', '#insertMacroForm', function(){
    $.ajax({
        url: 'index.php',
        data: 'request=loadMacro2&id='+$('#macroSelection').val(),
        success: function(msg){
            $('#topContent').val(msg);
        }
    });
    return false;
});
</script>

PHP

<?php
$query = 'SELECT * FROM POEMACRO WHERE POEID=' . db2_escape_string($_GET['id']);
$result = db2_exec($conn, $query) or die(db2_stmt_errormsg());
while($row = db2_fetch_assoc($result)){
    print $row['POEMACRO'];
}
?>
4

2 回答 2

6
$('textarea').val('line1\nline2')

这工作正常。您需要\n在您的 JavaScript 字符串中使用。
如果此字符串是在服务器上的 PHP 中形成的,您可能需要json_encode()将字符串格式化为 JavaScript 格式。

于 2012-06-26T20:37:08.987 回答
-3

在将文本传递给文本区域之前,您需要解析文本并将 \n 转换为中断标记 <br/>。

于 2012-06-26T20:21:36.133 回答