Максимальное количество символов в HTML


Ответы:


133

Есть 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 / любого другого.


27
Проверьте сервер в качестве последней проверки работоспособности, но добавьте улучшения на стороне клиента, если можете; это обеспечивает более богатый пользовательский опыт.
Роб

43

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

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

1
Это правда, но некоторые клиенты не проверяют это. Это особенно верно для клиентов на базе мобильных телефонов.
Drejc,

Также есть способы их удалить. Например, расширение Firefox для веб-разработчиков имеет функцию «Удалить максимальную длину».
Сэм Хаслер,

С помощью Chrome и его комплекта разработчика (который поставляется с браузером) такие вещи просто удалить в html
AntonioCS

12

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

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


Я согласен. можно POST-данные непосредственно на веб-сайт, используя какой-либо инструмент сценария, поэтому в этом случае maxlength и другие проверки на стороне браузера не являются
надежными

или используйте firebug и удалите атрибут maxlength.
Зак,

5

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

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


проверьте эту ссылку в StackOverflow: stackoverflow.com/questions/1125482/…
TlonXP 02

1

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

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

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


0

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

jQuery(document).ready(function($){ //fire on DOM ready
 setformfieldsize(jQuery('#comment'), 50, 'charsremain')
})
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.