js用\替换\ n和显示

时间:2014-06-18 21:33:26

标签: javascript jquery html

我有输入textarea和show-div来显示输入:

<textarea id="inputtext" style="height:100px"></textarea>

<button id="show">show in div</button>

<div id="showtext">

</div>

和我的js:

$(function(){
 $('#show').on('click',function(){
    var text = $.trim($('#inputtext').val());
    text = text.replace(/\r?\n/g, "<br />").replace(/<br\s*[\/]?>/gi, "\n");
    $('#showtext').text(text);
 });
});

我想要的是,如果你给予:
a
b
c

它也应该以这种形式显示。但它现在显示:a b c

这是我的小提琴:http://jsfiddle.net/5gkak/

我做错了什么?

1 个答案:

答案 0 :(得分:8)

您需要更改小提琴以符合此项:http://jsfiddle.net/5gkak/1/

$(function(){
    $('#show').on('click',function(){
        var text = $.trim($('#inputtext').val());
        text = text.replace(/\r?\n/g, "<br />");
        $('#showtext').html(text);
    });
});

您所拥有的内容是将\n替换为<br />,然后反向执行相同操作,以便<br />替换为\n。你还需要设置#showtext的html。查看jQuery文档中.text.html的区别。

还有其他选项(这些选项来自问题的评论部分):

相关问题