javascript – 将div HTML复制到textarea但保留换行符

参见英文答案 >
New line in text area                                    11个

我正在研究问卷调查应用程序,其中一个功能是用户可以单击一个问题并进行编辑.我遇到的问题是转换< br />标记为我的文本区域将理解的换行符.

保存代码如下所示:

$('#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不会接受新行,只是将所有文本捆绑在一起.

我怎样才能转换< br />回到我的textarea会理解的新换行符?

最佳答案 尝试

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

演示:Fiddle

点赞