Ограничить количество символов, разрешенных в текстовом поле ввода формы
Как ограничить или ограничить ввод пользователем не более пяти символов в текстовом поле?
ниже находится поле ввода, как часть моей форме:
<input type="text" id="sessionNo" name="sessionNum" />
он использует что-то вроде maxSize или что-то в этом роде?
9 ответов
максимальное количество символов, которые будут приняты в качестве входных данных. Это может быть больше , чем указано по размеру, в этом случае поле правильно свиток. По умолчанию не ограничено.
<input type="text" maxlength="2" id="sessionNo" name="sessionNum" onkeypress="return isNumberKey(event)" />
однако на это может повлиять или не повлиять ваш обработчик. Возможно, Вам также потребуется использовать или добавить другую функцию обработчика для проверки длины.
самый простой способ сделать так:
maxlength="5"
Так.. Добавление этого атрибута в элемент управления:
<input type="text"
id="sessionNo"
name="sessionNum"
onkeypress="return isNumberKey(event)"
maxlength="5" />
добавьте в заголовок следующее:
<script language="javascript" type="text/javascript">
function limitText(limitField, limitNum) {
if (limitField.value.length > limitNum) {
limitField.value = limitField.value.substring(0, limitNum);
}
}
</script>
<input type="text" id="sessionNo" name="sessionNum" onKeyDown="limitText(this,5);"
onKeyUp="limitText(this,5);"" />
по данным W3C по, значением по умолчанию для атрибута MAXLENGTH является неограниченное число. Поэтому, если вы не укажете max, пользователь может вырезать и вставить Библию пару раз и вставить ее в форму.
даже если вы укажете MAXLENGTH на разумное число, убедитесь, что вы дважды проверяете длину представленных данных на сервере перед обработкой (используя что-то вроде php или asp), поскольку довольно легко обойти основное ограничение MAXLENGTH во всяком случае
Я всегда делаю это так:
$(document).ready(function(){
var maxChars = $("#sessionNum");
var max_length = maxChars.attr('maxlength');
if (max_length > 0) {
maxChars.bind('keyup', function(e){
length = new Number(maxChars.val().length);
counter = max_length-length;
$("#sessionNum_counter").text(counter);
});
}
});
вход:
<input name="sessionNum" id="sessionNum" maxlength="5" type="text">
Number of chars: <span id="sessionNum_counter">5</span>
сделать это проще
<input type="text" maxlength="3" />
и используйте предупреждение, чтобы показать, что используются максимальные символы.
вы можете использовать
<input type = "text" maxlength="9">
или
<input type = "number" maxlength="9">
для чисел
или
<input type = "email" maxlength="9">
по электронной почте
проверка будет отображаться
Maxlength
максимальное количество символов, которые будут приняты в качестве входных данных. Атрибут maxlength указывает максимальное количество символов, разрешенных в элементе.
<form action="/action_page.php">
Username: <input type="text" name="usrname" maxlength="5"><br>
<input type="submit" value="Submit">
</form>