Javascript 限制数字输入字段集合中的字符数

Javascript 限制数字输入字段集合中的字符数,javascript,jquery,html,Javascript,Jquery,Html,我已经使用了来自问题的引用,我想准确地实现问题对多个输入文本字段的要求。我想限制用户不进一步键入,并且使用了GetElementsByCassName而不是getElementById HTML Javascript 但是,用户仅限于第一个输入框,而不限于其他输入框。我尝试了不同的方法,但无法理解为什么它没有发生。检查下面的代码。它将限制用户输入的数字不超过3位。您只需确保所有输入字段都具有相同的类表单字段: $.form字段。在“输入”上,函数{ var enteredVal=$this.v

我已经使用了来自问题的引用,我想准确地实现问题对多个输入文本字段的要求。我想限制用户不进一步键入,并且使用了GetElementsByCassName而不是getElementById

HTML

Javascript


但是,用户仅限于第一个输入框,而不限于其他输入框。我尝试了不同的方法,但无法理解为什么它没有发生。

检查下面的代码。它将限制用户输入的数字不超过3位。您只需确保所有输入字段都具有相同的类表单字段:

$.form字段。在“输入”上,函数{ var enteredVal=$this.val; 如果输入val.length>3{ $this.valenteredVal.substring0,enteredVal.length-1; console.log“不允许超过3个字符”; 回来 } };
您可以将maxlength属性添加到输入中?用户仅在第一个输入框中受到限制-我不确定是否理解这一点,您的意思是希望限制所有用户?还是仅仅是第一个领域?因为在我看来,你需要通过这个来特别检查聚焦中的场,你的循环是。。。var ele=元素长度/2;fory=0;y <td> <input id="quantity_scroll" cart_id="<?php echo $cart_row['id']; ?>" min="1" type ="number" max="99" value="<?php echo $cart_row['quantity'] ;?>" oninput = "checkLength()" class="form-control form-quantity" style=" width: 60px;text-align: left;" > </td>
function checkLength(){

var elements = document.getElementsByClassName("form-quantity");
var y;
var ele = elements.length/2;

for(y=0; y < ele; y++){
    var length = elements[y].value.length;

      if(length <= 2){

        return true;
    }else{  
            var value = elements[y].value;
             value = value.substring(0, value.length-1);    
             document.getElementsByClassName("form-quantity")[y].value = value;
        }
    }
}