input输入框为数字(number)类型时maxlength属性不起作用

使用html代码解决

<input type="number" maxlength="5" oninput="if(value.length>5)value=value.slice(0,5)" />

使用js代码解决

//输入框为数字类型时防止maxlength属性不起作用
$('input').bind('input propertychange', function() {
    if($(this).attr("type")=="number"){
        //获取输入框的最大长度
        var mxaL= $(this).attr("maxlength");
        //如果输入的长度超过最大长度
        if($(this).val().length>mxaL){
            $(this).val($(this).val().slice(0,mxaL));
        }
    }
});

你可能感兴趣的:(js,input,number,maxlength)