使用javascript(不是php)将<br>转换为换行符

use*_*627 2 html javascript string jquery line-breaks

我需要从带有段落和跨度以及其他东西的div中提取文本并将其放入textarea中.我只需要加载文本,而不是HTML.

为此,我可以使用:

loadtext = $('#mydiv').text();
Run Code Online (Sandbox Code Playgroud)

但是,我需要保留换行符.

为此,我正在做:

loadtext = $('#mydiv').text().replace(/<br>/gm, '\r\n');
Run Code Online (Sandbox Code Playgroud)

但它似乎不起作用,因为当我将该文本加载到textarea时,它都是平坦的,没有换行符.难道我做错了什么?

Asa*_*din 5

$('#mydiv').text()已被剥离所有HTML,包括<br>元素,所以这将无法正常工作.您需要修改#mydiv元素的HTML 并替换所有<br/>元素,然后检索文本.

$('#mydiv').find('br').each(function(){
    $(this).after("\n")
           .remove();
});
var loadtext = $("#mydiv").text();
Run Code Online (Sandbox Code Playgroud)