如何将文本从textarea添加到div

Bit*_* Ho 2 html textarea

我试过获取textarea(多行)的文本并将文本设置为div.但div只有一行来自textarea的文本

这是我的代码:

//html structure
<div>

    <textarea id="cmt_content" rows="10" cols="60"></textarea>
    <br> <input id="addAccordion" type="button" value="ADD COMMENT" />
</div>
<div id="rs">
</div>

//script
$('#addAccordion').click(function(){
    var content = document.createElement("div");
    content.appendChild(document.createTextNode($("#cmt_content").val()));
    $('#rs').append(content);
});
Run Code Online (Sandbox Code Playgroud)

非常感谢你!

Sam*_*iew 5

您必须将换行符转换为正确的HTML <br>标记.

var html = $("#cmt_content").val().replace(/(\n|\r|\r\n)/g, '<br>');
Run Code Online (Sandbox Code Playgroud)

然后简单地将其设置为您创建的div的innerHTML:

content.innerHTML = html;
Run Code Online (Sandbox Code Playgroud)

或者您可以将它组合成一行:

content.innerHTML = $("#cmt_content").val().replace(/(\n|\r|\r\n)/g, '<br>');
Run Code Online (Sandbox Code Playgroud)

查看实例:http://jsfiddle.net/samliew/RhHaS/

最终代码:

$('#addAccordion').click(function(){
    var content = document.createElement("div");
    content.innerHTML = $("#cmt_content").val().replace(/(\n|\r|\r\n)/g, '<br>');
    $('#rs').append(content);
});
Run Code Online (Sandbox Code Playgroud)