Предел символов в HTML

Как вы накладываете ограничение символов на текстовый ввод в HTML?

Ответ 1

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

Чистый 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/whatever script.

Ответ 2

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

<input type="text" name="textboxname" maxlength="100" />

Ответ 3

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

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

Ответ 5

Для <input> элемент: атрибут maxlength:

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

(кстати, тип "текст", а не "текстовое поле", как другие пишут), однако вы должны использовать javascript с <textarea> s. В любом случае длина должна быть проверена на сервере в любом случае.

Ответ 6

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

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