Появилась необходимость вставить текст, полученный из базы данных (а до того - из текстового поля) в функцию javascript. Ну, чтобы, например, при нажатии кнопки нужный текст появился в нужном месте. Примерно так: Код (PHP): echo "<script> ... var text = \"" . $text . "\"; ... </script>"; Где $text - тот самый текст, полученный из БД. Но в тексте от пользователя вполне могут быть переносы строк. ОК, заменяем перенос строки на пробел: Код (PHP): $text = str_replace("\n", " ", $text); Смотрим в исходный код html - все замечательно, получаем что-то вроде такого: Код (PHP): <script> ... var text = "Мой текст"; ... </script> Текст преобразуется в одну строку, даже если был изначально перенос строки. Но кнопка не работает! Получаем в консоли ошибку вроде такой: Строка оказалась перенесена, хотя в исходном коде так: Пробовал и разбить текст, как массив (explode("\n", $text) и потом его обратно собирать в строку - то же, что и в примере выше, пробовал подставить вместо переноса знак экранирования, чтобы js считал его единой строкой - не выходит: "\" ставится ПОСЛЕ переноса... Почему в исходном коде html все красиво, а при попытке браузером выполнить код js "воскресает" перенос строки?.. PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
Пробовал. Этого символа там и нет: в исходном html коде так же сохраняется перенос. PS Странно, что первым делом не посоветовали trim() - его я в первую очередь попробовал - не работает, так же, как и rtrim() Добавлено спустя 30 минут 38 секунд: О! надо сделать так: Код (PHP): str_replace("\r\n", " ", $text); PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]