Проблема!
Есть данные из <textarea>, которые пишутся в MySQL. Данные записываются "как есть", т.е. все проверки уже отключены, никакой фильтрации и пр. В этих данных присутствуют символы перевода строки, которые, при выводе в браузере надо сохранить.
Соответственно PHP-скрипт при запросе клиентом на стороне сервера прогоняет переменную через nl2br() и отдает её JavaScript, который выводит всё это:
var par = document.createElement("p");
var text = document.createTextNode(data);
par.appendChild(text);
И т.д...
И вот дело в том, что перед всеми \n вставляются <br/> (как и положено), но в браузере все эти <br /> становятся видимыми! Он даже не думает обрабатывать их как теги HTML. Такая же ерунда с "e и прочими заменяемыми символами.
Чую, что это что-то элементарное, но...
Через <pre> делать это категорически не хочется!