html 中 input 标签的 value 值的长度理论上应该是 2^32(数据来源于资料,没有测试过),但为了防止一些 input 的输入数据过长来做一些限制,该如何实现呢?这篇文章就来介绍一下,如何限制 input 输入数据的长度并且输入的数据超过规定的长度该如何去提示?
html input 限制输入字符串长度的方法
input 标签中的 maxlength 属性,可以用来规定输入字符串的最大长度。
示例代码:
html input 限制输入字符串的长度并提示的方法
maxlength 属性虽然可以限制 input 输入字符串的长度,但对于用户的体验来说是很不友好的,所以我们要利用 js 代码在 input 输入的字符超过规定的长度时给出提示!
jq示例代码:
$('#inputs').on('input propertychange',function(){
var num,le;
num = $(this).val().length;
le = parseInt($(this).attr('maxlength'))-1; // 这里是获取的 maxlength 属性的值
if (num > le) {
alert('长度超过限制!');
}
})
注意:
1、上面 js 代码中 le 变量规定的限制长度要比实际中少一位(减去一个1),不然不会触发判断逻辑
2、js 中 le 变量获取的是 maxlength 属性的值,如不想获取此属性的值,可以自定义!
3、使用上面的 js 代码前,要加载 jquery.js 文件!
原生 js 代码示例
function keyPress(ob) {
//这里比较时,要比实际的限制数量少一位才会触发判断逻辑!
if(ob.value.length > 9){
alert('长度超过限制啦!');
}
}