我想将输入类型编号限制为最多5个数字,我使用下面的代码,这是运行良好,唯一的问题是对于退格我必须使用event.keycode,我不想使用。除了使用退格键码之外还有其他选择。
var input = document.getElementById('input');
input.addEventListener('keypress',showData,false)
function showData(event)
{
if(event.target.value.length<=5)
{
return true;
}
else
{
event.preventDefault();
}
}
答案 0 :(得分:3)
如果您需要,如果用户尝试键入超过5个数字,则只保留5个数字:
input.oninput = function() {
if (this.value.length > 5) {
this.value = this.value.slice(0,5);
}
}
答案 1 :(得分:0)
为什么不使用:
<input type="number" max="99999">
这仍然不会阻止用户手动输入大于99999的值,但输入元素将无效。
答案 2 :(得分:0)
<input type="number" max="99999" />
How can I limit possible inputs in a HTML5 "number" element?
答案 3 :(得分:0)
<form>
<input required type="text" name="inputname" pattern="[0-9]{5,}">
<input type="submit" value="submit">
</form>