Как удалить и <br> с помощью javascript или jQuery?

Я написал следующий код. Но он удаляет только &nbsp; not <br>

var docDesc = docDescription.replace(/(&nbsp;)*/g,"");
var docDesc1 = docDescription.replace(/(<br>)*/g,"");

Ответ 1

Вы можете удалить <br> только с помощью CSS:

#some_element br {
  display: none;
}

Если это не соответствует вашим потребностям и вы действительно хотите удалить каждый <br>, это зависит, если docDescription - действительно строка (тогда одно из вышеперечисленных решений должно работать, в частности, Мэтт Блейн) или DOM node. В последнем случае вам нужно прокрутить элементы br:

//jquery method:
$('br').remove();

// plain JS:
var brs = common_parent_element.getElementsByTagName('br');
while (brs.length) {
  brs[0].parentNode.removeChild(brs[0]);
}

Изменить: почему предложение Мэтта Балина? Потому что он также обрабатывает случай, где <br> появляется в контексте XHTML с закрывающей косой чертой. Однако более полным было бы следующее:

/<br[^>]*>/

Ответ 2

Try:

var docDesc = docDescription.replace(/[&]nbsp[;]/gi," "); // removes all occurrences of &nbsp;
docDesc = docDesc.replace(/[<]br[^>]*[>]/gi,"");  // removes all <br>

Ответ 3

Попробуйте "\n"... посмотреть, работает ли он.

Ответ 4

Как насчет:

var docDesc1 = docDescription.replace(/(<br ?\/?>)*/g,"");

Ответ 5

Попробуйте это

var text = docDescription.replace(/(?:&nbsp;|<br>)/g,'');

Ответ 6

Это будет зависеть от входного текста, но я только что проверил, что это работает:

var result = 'foo <br> bar'.replace(/(<br>)*/g, '');
alert(result);

Ответ 7

Вы можете сделать это следующим образом:

var cell = document.getElementsByTagName('br');
var length = cell.length;
for(var i = 0; i < length; i++) {
    cell[0].parentNode.removeChild(cell[0]);
}

Это работает как шарм. Нет необходимости в jQuery.

Ответ 8

Я использую простую замену, чтобы удалить теги &nbsp; и br.

JavaScript

var str = docDescription.replace(/&nbsp;/g, '').replace(/\<br\s*[\/]?>/gi, '');

JQuery

Удалите br с помощью remove() или replaceWith()

$('br').remove();

или

$('br').replaceWith(function() {
  return '';
});