Фиксирование перенос строки JS
Хотелось бы узнать, как в textarea проверять, стоит ли перенос строки, к примеру
if(textarea.value == "перенос"){
textarea.value += "br"
}
И после того как жмешь на кнопку вывести (к примеру есть такая кнопка), то он в
местах где перенос, вставлял "br" или "p" (теги)
Ответы (2 шт):
Автор решения: Enokin
→ Ссылка
При нажатии enter, в значение textarea добавляется символ переноса строки. Это поведение по-умолчанию. Для вывода в HTML, переносы надо заменять на br.
value.replace(/\n/g, '<br/>');
Иначе переносы будут заменены пробелами.
Автор решения: MoloF
→ Ссылка
Вариант с помощью замены \n на <br />
button.onclick = () => {
output.innerHTML = textarea.value.replace(/\n/g, '<br />');
};
<textarea id="textarea"></textarea>
<button id="button">Отобразить</button>
<p id="output"></p>
Вариант с помощью CSS white-space: pre-line;
textarea.oninput = (e) => (output.innerHTML = e.target.value);
p {
white-space: pre-line;
}
<textarea id="textarea"></textarea>
<p id="output"></p>
Ваш вариант с помощью стоп слова.
textarea.oninput = (e) => {
output.innerHTML = e.target.value.replace(/перенос/g, '<br />');
};
<textarea id="textarea"></textarea>
<p id="output"></p>