как узнать количество строк в textarea

Как посчитать количество строк в textarea?

Как можно посчитать количество строк в textarea?

@iiil когда делал решение проблемы оформления границ текстовых прямоугольников toster.ru/q/121825, вдруг вспомнил про эту задачу.

Зачем мы высоту искали, делили на line-height. Надо было просто в div воткнуть span и брать количество областей от его getClientRects().

Да вроде метод-то поддерживается с незапамятных времён. Так что единственный вопрос — производительность. То ли clientRects(), то ли расчёт высоты и деление (возможно, с округлением).

Терзают смутные сомнения, что для clientHeight задействуются механизмы, схожие с теми, что и при clientRects().

@iiil сделал тесты — getClientRects для подсчёта строк оказался существенно медленней, чем взятие высоты банальное деление с округлением.

Проверял на 1 000 000 итераций:
80 мс : 1800 мс [FF]
10 мс : 2000 мс [Chrome]

Так что для специфических задач getClientRects пойдёт, а для мелких и частых изменений состояния, возможно, лучше более примитивные. Безусловно, одна операция копеечная — даже в Chrome всего 2 мкс.

Кстати, на самом блоке getBoundingClientRect существенно быстрее (тот же 1 000 000 итераций):
200 мс [FF]
100 мс [Chrome]

Так что я ошибался с мыслью, что реализация client-, offset-, scroll- параметров так же затратна, как и определение областей элементов.

Источник

Как получить количество строк в текстовой области?

Я хотел бы посчитать количество строк в текстовой области, например:

Следует считать до 4 строк. В основном, нажав Enter один раз, вы переместитесь на следующую строку.

Следующий код не работает:

Он всегда дает «1» независимо от того, сколько строк.

13 ответов

Я реализовал линии и методы lineCount как прототипы String:

Очевидно, что метод split не будет подсчитывать символ возврата каретки и / или символа новой строки в конце строки (или свойство innerText текстовой области) в IE9, но он будет считать его в Chrome 22, что приведет к другим результатам.

До сих пор я учитывал это, вычитая 1 из числа строк, когда браузер отличается от Internet Explorer:

Надеюсь, у кого-то есть лучший RegExp или другой обходной путь.

А как насчет разделения на \ n?

Также будет проблема, когда одна строка переносится в 2 строки в текстовой области.

Чтобы сделать это точно так, вы можете использовать шрифт с фиксированной высотой и измерять пиксели. Это может быть проблематично, хотя.

Эта функция считает количество строк с текстом в текстовой области:

Ваш ответ может быть сделан очень простым способом.

Этот код для точных строк, заполненных в текстовой области. и будет работать наверняка.

Я использовал оригинальный ответ Mottie, но некоторые функции были изменены в JQuery API. Вот рабочая функция для текущего API v3.1.0:

Читайте также:  как же я так допустил что ты овладела мной песня

Все пальцы за ответ Мотти!

Проблема с использованием «\ n» или «\ r» заключается в том, что он подсчитывает только количество возвратов, если у вас есть длинная строка, которую можно обернуть, и тогда она не будет считаться новой строкой. Это альтернативный способ получения количества строк, поэтому он может быть не лучшим.

Редактировать (спасибо, Алекс):

Обновление: здесь можно найти более подробный ответ: https://stackoverflow.com/a/1761203/145346

Это будет направлено на рассмотрение строк с жестким и мягким возвратами:

Если вы просто хотите проверить жесткие возвраты строки, это будет работать кроссплатформенно:

Однако это работает, если вам нужно использовать его, потому что это отвечает вашей проблеме

Источник

Как получить количество строк в textarea?

Я хотел бы подсчитать количество строк в textarea, e.g:

следует считать до 4 строк. В основном нажатие enter один раз перенесет вас на следующую строку

Следующий код не работает:

Он всегда дает ‘ 1 ‘ независимо от того, сколько строк.

12 ответов

Как насчет разделения на «\n» вместо этого?

Это также будет проблемой, когда одна строка обернута в 2 строки в textarea.

Чтобы сделать это точно, как это, вы можете использовать фиксированную высоту шрифта и измерения пикселей. Это может быть проблематично, хотя.

пользователь \n вместо \r

Если вы как раз хотите испытать трудную линию возвращения, то это будет работать перекрестная платформа:

Обычный символ новой строки — «\n». Соглашение о некоторых системах также должно иметь «\r» заранее, поэтому в этих системах «\r\n» часто означает новую строку. В браузере, если пользователь намеренно не вводит «\r», копируя его откуда-то еще, новая строка, вероятно, будет выражена просто «\n». В любом случае разбиение на «\n» будет считать количество строк.

Проблема с использованием » \n «или» \r » заключается в том, что он подсчитывает только количество возвратов, если у вас есть длинная строка, которую можно обернуть, и тогда она не будет учитываться как новая строка. Это альтернативный способ получить количество строк-так что это может быть не лучшим способом.

Update: здесь есть гораздо более подробный ответ: https://stackoverflow.com/a/1761203/145346

Я реализовал методы lines и lineCount в качестве прототипов строк:

По-видимому, метод split не будет считать возврат каретки и/или символ новой строки в конце строки (или свойство innerText textarea) в IE9, но он будет считать его в Chrome 22, давая различные результаты.

До сих пор я приспособился для этого, вычитая 1 из числа строк, когда браузер отличается от Internet Explorer:

Надеюсь, у кого-то есть лучший RegExp или другой обходной путь.

Читайте также:  актеры с хриплым голосом

Источник

Узнать количество строк в textarea

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Определить количество переносов строк textarea
textarea содержит следующее asdasdasd dfgdffgdffg ffhgh Как пропустить через данную.

Узнать из текста в файле количество строк и наибольшее количество слов в строке
Помогите пожалуйста, подсчет строк я вроде сделал, а вот строку с наибольшим количеством слов не.

Узнать количество строк в текстовом файле и записать количество в Label
Здравствуйте! Как знать количество строк в текстовом файле(.txt) и записать это количество в.

Как узнать количество НЕ скрытых строк в qtablewidget или как изменить нумерацию строк по порядку
Здравствуйте, в программе есть таблица с данными, которые после определенных действий меняются и.

Решение

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Узнать количество неповторяющихся строк
Здрасте. Есть stringGrid c данными К примеру: ООО «БАЛТЛПА» ООО «СОЛЮШИОНС» ИП «Назаренко».

Узнать количество строк сверху
Добрый день. Не могу понять алгоритм. Есть таблица: id|txtcolumn1|txtcolumn2|login.

Узнать количество строк в Label
Можно ли как-нибудь узнать кол-во строк в Label? AutoSize = false, поэтому происходит перенос по.

Как узнать количество строк ListView
listview.lenght, listview.items.lenght и т.д. пишет, что такого нет.

Источник

Как получить количество строк в a textarea?

Что я хотел бы, так это подсчитать количество строк в a textarea, например:

следует считать до 4 строк. В принципе нажатие клавиши enter один раз перенесет вас на следующую строку

Следующий код не работает:

Он всегда дает ‘1’ независимо от того, сколько строк.

14 ответов

Привет, у меня есть функция для увеличения количества строк a textarea, когда пользователь вводит на нем текст, так что она работает нормально. Но когда форма вводит текст в textarea, так как пользователь не вводит его, она не увеличивает количество строк, а показывает только количество строк.

Мне было интересно, есть ли какой-нибудь способ узнать, сколько строк текста имеет a textarea. А также, если бы можно было прослушивать изменения количества строк. Я пытаюсь разработать компонент, который сначала отображает только одну строку, а затем начинает расти по мере необходимости.

Редактировать (спасибо Алекс):

Обновление: Здесь есть гораздо более подробный ответ: https://stackoverflow.com/a/1761203/145346

Если вы просто хотите протестировать жесткую линию возврата, это будет работать на кросс-платформе:

Я реализовал методы lines и lineCount в качестве прототипов строк:

По-видимому, метод split не будет считать возврат каретки и/или символ новой строки в конце строки (или свойство innerText textarea) в IE9, но он будет считать его в Chrome 22, что приведет к другим результатам.

До сих пор я приспосабливался к этому, вычитая 1 из числа строк, когда браузер отличается от Internet Explorer:

Читайте также:  как понять что в организме идет воспалительный процесс

Надеюсь, у кого-то есть лучший RegExp или другой обходной путь.

пользователь \n вместо \r

Однако это работает, если вам нужно использовать его, потому что он отвечает на вашу проблему

А как насчет разделения на «\n» вместо этого?

Это также будет проблемой, когда одна строка обернута в 2 строки в textarea.

Чтобы сделать это точно так, вы можете использовать шрифт фиксированной высоты и измерять пиксели. Однако это может быть проблематично.

Эта функция подсчитывает количество строк, содержащих текст в textarea:

Возможный Дубликат : Как получить количество строк в

Есть ли быстрый и простой способ ограничить количество строк, которые пользователь может ввести в textarea, используя jquery/javascript? Спасибо,

Я использовал оригинальный ответ Мотти, но некоторые функции были изменены в JQuery API. Вот рабочая функция для текущего API v3.1.0:

Все ждут ответа Мотти!

Это будет направлено на рассмотрение линий как с жесткой, так и с мягкой отдачей:

Ваш ответ может быть сделан очень простым способом.

Этот код для точных строк заполняется в textarea. и будет работать наверняка.

Попробуйте вызывать эту функцию каждый раз, когда вы меняете ее значение.

Похожие вопросы:

Я видел несколько примеров в jQuery и JS об этом. http://jsfiddle.net/XNCkH/17 / Я огляделся вокруг и вижу, что вы можете ограничить длину (см. fiddle). Мне было интересно, есть ли способ ограничить.

Я пытаюсь ограничить количество строк в textarea, чтобы убедиться, что введенный текст вписывается в макет. Максимальное количество символов в строке-83. Я нашел несколько решений( например, это ).

Привет, у меня есть функция для увеличения количества строк a textarea, когда пользователь вводит на нем текст, так что она работает нормально. Но когда форма вводит текст в textarea, так как.

Мне было интересно, есть ли какой-нибудь способ узнать, сколько строк текста имеет a textarea. А также, если бы можно было прослушивать изменения количества строк. Я пытаюсь разработать компонент.

Возможный Дубликат : Как получить количество строк в

Есть ли быстрый и простой способ ограничить количество строк, которые пользователь может ввести в textarea, используя jquery/javascript? Спасибо,

Я пытаюсь создать список с количеством строк textarea, как в текстовом редакторе. Я сделал это с элементом VBox и добавил TextField ListCell, но когда я прокручиваю textarea, то VBox этого не делает.

У меня есть Textarea, который я использую только для отображения контента. Как мне установить его максимальное количество строк равным 4, независимо от длины строки. Или есть способ рассчитать.

Источник

Советы мастера