Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Подсчет "реальной" длины текста в textarea (https://javascript.ru/forum/dom-window/9760-podschet-realnojj-dliny-teksta-v-textarea.html)

Kolyaj 04.06.2010 20:24

Цитата:

Сообщение от modernx
чтобы на выходе получить 1rnrn ? Зачем?

Сейчас у тебя выводится вот такая строка '\\r\\n', а надо '\n\r'.

modernx 04.06.2010 21:09

Цитата:

Сообщение от Kolyaj (Сообщение 57903)
Сейчас у тебя выводится вот такая строка '\\r\\n', а надо '\n\r'.

В общем, я просто тупанул: забыл про mysql_escape_string, который мне и прописал эти коды :)

Всем спасибо! :thanks:

e1f 04.06.2010 21:11

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
    <title>Character count test</title>

    <meta http-equiv="content-type" content="text/html;charset=utf-8" />
    <meta name="generator" content="Geany 0.18.1.1" />

    <style type="text/css">
    #report {
      white-space: -moz-pre-wrap; /* Mozilla, supported since 1999 */
      white-space: -pre-wrap; /* Opera 4 - 6 */
      white-space: -o-pre-wrap; /* Opera 7 */
      white-space: pre-wrap; /* CSS3 - Text module (Candidate Recommendation) http://www.w3.org/TR/css3-text/#white-space */
      word-wrap: break-word; /* IE 5.5+ */
    }
    </style>

    <script type="text/javascript">
    function count_symbols() {
        var val = document.getElementById('counter').value,
            len = val.replace(/\r\n/g, '\n').length;

        document.getElementById('report').
            appendChild(document.createTextNode(len + '\n'));
    }
    </script>
</head>

<body>
<p><textarea id="counter" rows="5" cols="20">это
просто
тест</textarea></p>
<p><button onclick="count_symbols()">Count</button></p>
<p id="report"></p>
</body>
</html>

Какой идиот придумал виндовые переводы строк...

modernx 04.06.2010 21:28

Цитата:

Сообщение от e1f (Сообщение 57907)
Какой идиот придумал виндовые переводы строк...

Да, подытожив, могу лишь отметить, что в любом случае в php придет 2 символа "\r\n", а подобный скрипт подсчитает лишь 1, следовательно, надо подсчитывать количество вхождений "\n" (при удаленных "\r") и увеличивать счетчик на это количество.

Хмм... А вот как из Линуксового браузера уйдёт такой текст весьма интересно...

B~Vladi 05.06.2010 00:58

Цитата:

Сообщение от e1f
Какой идиот придумал виндовые переводы строк...

Переводы строк они и в африке... Кто в винду засунул возврат коретки?! Вот это вопрос.

micscr 05.06.2010 08:39

Цитата:

Сообщение от modernx (Сообщение 57908)
Да, подытожив, могу лишь отметить, что в любом случае в php придет 2 символа "\r\n", а подобный скрипт подсчитает лишь 1, следовательно, надо подсчитывать количество вхождений "\n" (при удаленных "\r") и увеличивать счетчик на это количество.

можно еще в php просто удалить из строки "\r".

Gvozd 05.06.2010 10:52

Цитата:

Сообщение от B~Vladi
Переводы строк они и в африке... Кто в винду засунул возврат коретки?! Вот это вопрос.

тогда, вопрос, кто убрал из макОси перевод строки, оставив но его месте возврат каретки?;)

B~Vladi 05.06.2010 12:06

Кто на что горазд:)

e1f 05.06.2010 12:29

Эх, еще бы в BolgenOS реализовали \n\r, для полноты ощущений :)

subzey 05.06.2010 21:03

\x00\n, чтобы уж совсем экстремально.


Часовой пояс GMT +3, время: 05:10.