Здравствуйте, у меня есть этот код с использованием HTML
<div class = "abc">
<div class = "12" id = "hour"></div>
</div>
И я хочу использовать javascript следующим образом:
$('#hour').empty();
$('#hour').text(begin+ " \n "+end);
Проблема в том, что у меня нет новой строки для конца переменной...
Есть ли у вас какие-либо идеи для решения этой проблемы?
Спасибо !
В ответах описано, как это исправить, но уточнить, почему это не работает — ну, собственно, так оно и есть. Он выводит новую строку. Проблема в том, что вы выводите HTML, а HTML рассматривает любое количество пробелов как эквивалент одного пробела. Так что тот факт, что там есть символ новой строки, не имеет значения для вывода, который вы видите в браузере.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Поскольку вы добавляете этот контекст на HTML-страницу внутри <div>, предлагаемый способ — использовать функцию html() вместо text(). Затем вы можете использовать <br/>, чтобы добавить новую строку. Итак, когда весь этот контент отображается как HTML, <br/> добавит новую строку. Это также определяет разницу между функциями text() и html().
var begin = 'begin';
var end = 'end';
$('#hour').empty();
$('#hour').html(begin + "<br/> " + end);<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class = "abc">
<div class = "12" id = "hour"></div>
</div>Используйте html() вместо text() и <br> вместо \n
$('#hour').empty();
$('#hour').html('begin'+ "<br>"+'end');<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class = "abc">
<div class = "12" id = "hour"></div>
</div>
Используйте тег <br> вместо \n