Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.05.2020, 07:02
Профессор
Отправить личное сообщение для DDim1000 Посмотреть профиль Найти все сообщения от DDim1000
 
Регистрация: 20.10.2016
Сообщений: 223

Как отменить действие br, перенос строки?
Здравствуйте!
Получаю текст из div, где применен тег <br />, и в alert текст подает с переносом строки.
Скажите, пожалуйста, можно ли убрать этот перенос?
Изображения:
Тип файла: jpg js br.jpg (12.8 Кб, 4 просмотров)
Ответить с цитированием
  #2 (permalink)  
Старый 23.05.2020, 07:44
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

qwerty<br />asdfgh

<script>
alert('qwerty<br />asdfgh')
</script>


В alert тег BR будет воспринят обычным текстом и никакого переноса не будет. У вас какая-то пользовательская плюшка выводящая сообщения, которая может отображать и html, поэтому вы и наблюдаете это. А чтобы отменить, нужно удалять тег BR из текста.
Ответить с цитированием
  #3 (permalink)  
Старый 23.05.2020, 07:55
Профессор
Отправить личное сообщение для DDim1000 Посмотреть профиль Найти все сообщения от DDim1000
 
Регистрация: 20.10.2016
Сообщений: 223

А как удалить тег br?
Ответить с цитированием
  #4 (permalink)  
Старый 23.05.2020, 08:02
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Если у вас все работает на jQery, то можно взять просто текст, при этом теги будут вырезаны (1). То есть не только BR, а все имеющиеся. Если другие теги нужно сохранить, значит берем html и рег. выражением вырезаем только нужное (2).

<html>
<head>
<meta charset="utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
</head>
<body>
<p id="a">Text <b>text</b> <br/> text</p>
<p id="b"></p>
<p id="c"></p>
<script>
$('#b').html($('#a').text());
$('#c').html($('#a').html().replace(/<br.?>/g, ''));
</script>
</body>
</html>


PS. Если не JQ и все теги не нужны, то тоже самое будет

document.querySelector('#b').textContent = document.querySelector('#a').textContent;

Последний раз редактировалось laimas, 23.05.2020 в 08:11.
Ответить с цитированием
  #5 (permalink)  
Старый 23.05.2020, 08:38
Профессор
Отправить личное сообщение для DDim1000 Посмотреть профиль Найти все сообщения от DDim1000
 
Регистрация: 20.10.2016
Сообщений: 223

Сообщение от laimas Посмотреть сообщение
...
PS. Если не JQ и все теги не нужны, то тоже самое будет

document.querySelector('#b').textContent = document.querySelector('#a').textContent;
Нет, структура кода другая.....
Вот, можно здесь посмотреть: https://jsfiddle.net/qfet2z6j/2/
Ответить с цитированием
  #6 (permalink)  
Старый 23.05.2020, 08:50
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Ваша структура может быть какая угодно, мне же откуда ее знать. Поэтому я и пишу пример, в котором ключевое, это textContent. По ссылке тоже самое, только все полученное (только текст) помещается в массив.
Ответить с цитированием
  #7 (permalink)  
Старый 23.05.2020, 09:06
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

DDim1000,
textContent.trim()
https://jsfiddle.net/7xqmho9b/

Последний раз редактировалось рони, 23.05.2020 в 09:12.
Ответить с цитированием
  #8 (permalink)  
Старый 23.05.2020, 09:13
Профессор
Отправить личное сообщение для DDim1000 Посмотреть профиль Найти все сообщения от DDim1000
 
Регистрация: 20.10.2016
Сообщений: 223

Сообщение от laimas Посмотреть сообщение
По ссылке тоже самое, только все полученное (только текст) помещается в массив.
Ну, если полученные данные - это массив, тогда по нему можно пройти в цикле? А как?
Вот так у меня по одной букве выводится:
for (var l = 0; l < countPeople.length; l++) {
 
            console.log("countPeople "+countPeople[l] );
          }
Ответить с цитированием
  #9 (permalink)  
Старый 23.05.2020, 09:22
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Вот тут я не знаю чего вы хотите получить от массива, тем более countPeople, которого по ссылке не видно.
Ответить с цитированием
  #10 (permalink)  
Старый 23.05.2020, 09:44
Профессор
Отправить личное сообщение для DDim1000 Посмотреть профиль Найти все сообщения от DDim1000
 
Регистрация: 20.10.2016
Сообщений: 223

Сообщение от laimas Посмотреть сообщение
...тем более countPeople, которого по ссылке не видно.
Вот новая ссылка: https://jsfiddle.net/qfet2z6j/3/
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
tinymce как запретить перенос элементов?? spiritсашаspirit Элементы интерфейса 2 16.04.2016 19:05
Как отменить действие обработчика? goody-goody Общие вопросы Javascript 15 27.12.2015 20:41
как обратно включить действие по умолчанию, после e.preventDefault? Кирюха =) Events/DOM/Window 4 04.06.2015 15:32
Как передать данные в другую панель из выбранной строки таблицы. layout: 'card'. Пролетарий ExtJS 5 03.06.2015 22:53
Отправка формы по ENTER (ajax) и перенос строки VEGA jQuery 18 01.03.2013 14:09