Как вставить текст с переводом строк?
$('#log').html('text text
text text');
не работает |
|
a = " это очень,*!*\*/!* очень длинная строка" alert(a) |
А может просто <br/> поставить?
|
я бы тоже через <br /> код html вставлял.
|
Не-а, не работает.
Это нужно для формы обратной связи, что бы не отправляли "Войну и мир" в textarea. Обрезать текст до 1000 знаков не вопрос, а вот обновить поле не получается
$txt = nl2br("dfvdfvdf
dfvdfv
dfvdfv");
$txt = preg_replace('/\n|\r/sui', '',$txt);
echo '<script>$(\'#ftxt\').val(\''.$txt.'\');</script>';
Вставляет dfvdfvdf<br />dfvdfv<br />dfvdfv |
Цитата:
|
Так если не делать этого, то отдается с переводом строк в консоль и не вставляется!
Вот сабж, только я рецепт никак не догоню.. http://forum.vingrad.ru/forum/topic-326152.html |
Чисти строку, как тебе надо, просто не вырезай переносы строк и все будет ок. Например:
<textarea id="txt" style="width: 500px; height: 110px;">This is some dirty appempt to make a
script
injection <script>alert('hello')</script>
boom!
(note new lines)
</textarea>
<br>
<button onclick="clean()">Test</button>
<script>
function clean() {
var el = document.getElementById('txt');
var text = el.value;
el.value = stripTags(text);
}
function stripTags(str) {
return str.replace(/<\w+(\s+("[^"]*"|'[^']*'|[^>])+)?>|<\/\w+>/gi, '');
}
</script>
|
уфффф... разобрался
//$tmp[0][0] - это после обрезки, в общем исходный текст с переносами $txt = nl2br($tmp[0][0]); //для вставки в тело письма $txt2 = urlencode($tmp[0][0]); //кодируем $mess .= '$(\'#ftxt\').val(decodeURIComponent(\''.$txt2.'\'));'; //вывод с декодированием (сам вывод чуть ниже) Пример работы http://kro002.jcase.ru/index-5.html введите в textarea больше 20 символов, не заполняя другие поля нажмите "Отправить". |
| Часовой пояс GMT +3, время: 15:00. |