我正在尝试将数据库中的数据插入到textarea中。我不知道如何制作新的线条。我使用jquery的val()函数来设置textarea内容。我把\ n但它只是出现在textarea而不是制作换行符。我也试过\ r \ n得到了相同的结果。
更新
好的,我注意到我只是在val()函数中使用\ n对字符串进行硬编码。所以问题必须在我通过php的ajax返回的字符串的某处。我使用$ .ajax来调用PHP,它从mysql获取值。关于出了什么问题的任何想法?
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'];
}
?>
答案 0 :(得分:6)
$('textarea').val('line1\nline2')
这很好用。
您需要在JavaScript字符串中使用\n
如果此字符串是在服务器上的PHP中形成的,则可能需要json_encode()
之类的内容来格式化JavaScript格式的字符串。
答案 1 :(得分:-3)
您需要解析文本并将\ n转换为break标记&lt; br /&gt;在你把它传递给textarea之前。