Лимит символов в HTML - PullRequest
       20

Лимит символов в HTML

93 голосов
/ 22 сентября 2008

Как наложить ограничение на количество символов для ввода текста в HTML?

Ответы [ 6 ]

132 голосов
/ 22 сентября 2008

Существует 2 основных решения:

Чистый HTML один:

<input type="text" id="Textbox" name="Textbox" maxlength="10" />

JavaScript-код (прикрепить его к событию onKey):

function limitText(limitField, limitNum) {
    if (limitField.value.length > limitNum) {
        limitField.value = limitField.value.substring(0, limitNum);
    } 
}

Но в любом случае, хорошего решения нет. Вы не можете адаптироваться к плохой реализации HTML каждого клиента, это невозможно победить. Вот почему гораздо лучше проверить это на стороне сервера, используя PHP / Python / любой другой скрипт.

43 голосов
/ 22 сентября 2008

есть атрибут maxlength

<input type="text" name="textboxname" maxlength="100" />
11 голосов
/ 22 сентября 2008

В дополнение к вышесказанному, я хотел бы отметить, что проверка на стороне клиента (HTML-код, JavaScript и т. Д.) Никогда не бывает достаточной. Также проверьте длину на стороне сервера, или просто не проверяйте вообще (если не так важно, чтобы людям было позволено обойти это, то это не так важно, чтобы действительно гарантировать какие-либо шаги, чтобы предотвратить это).

Кроме того, ребята, он (или она) сказал HTML, а не XHTML. ;)

5 голосов
/ 22 сентября 2008

используйте атрибут "maxlength", как говорили другие.

если вам нужно указать максимальную длину символа в текстовой области, вам нужно обратиться к Javascript. Посмотрите здесь: Как наложить maxlength на textArea в HTML, используя JavaScript

1 голос
/ 22 сентября 2008

Для элемента есть атрибут maxlength:

<input type="text" id="Textbox" name="Textbox" maxlength="10" />

(кстати, типом является «текст», а не «текстовое поле», как пишут другие), однако вы должны использовать javascript с

0 голосов
/ 01 октября 2015

вы можете установить maxlength с помощью jquery, который очень быстрый

jQuery(document).ready(function($){ //fire on DOM ready
 setformfieldsize(jQuery('#comment'), 50, 'charsremain')
})
...