【问题标题】:Copy div HTML to textarea but keep line breaks [duplicate]将 div HTML 复制到 textarea 但保留换行符 [重复]
【发布时间】:2013-04-02 09:59:50
【问题描述】:

我正在开发一个问卷应用程序,其中一项功能是用户可以单击问题并对其进行编辑。我遇到的问题是将 <br /> 标记转换为我的 textarea 可以理解的换行符。

保存代码如下:

$('#questions').append("<div>"+$('textarea[name="question"]').val().replace(/\n/g, '<br />')+"</div");

这很完美!将其转换回来的代码如下所示:

$('textarea[name="question"]').val($('#questions').eq(1).html().replace(/<br\s*\/?>/mg,"\n"));

但由于某种原因,textarea 将不接受新行,而是将所有文本捆绑在一起。

如何将&lt;br /&gt; 转换回我的 textarea 可以理解的新换行符?

【问题讨论】:

标签: javascript jquery


【解决方案1】:

试试

$('textarea[name="question"]').val($('#questions').eq(1).html().replace(/\s*<br\s*\/?>\s*/g,"\n"));

演示:Fiddle

【讨论】:

  • 这正是我想要的!非常感谢!
【解决方案2】:

您需要将 &lt;br&gt;'s 转换为 HTML 编码的换行符。

&amp;#10; 换行和&amp;#13; 回车。这样,您实际上是在解析新行 ("\n"),而不是将其显示为文本。

New line in text area

【讨论】:

    猜你喜欢
    • 2013-04-16
    • 2014-07-30
    • 1970-01-01
    • 2011-10-18
    • 2014-06-29
    • 2015-12-21
    • 2013-08-11
    • 2017-06-13
    • 2017-08-06
    相关资源
    最近更新 更多