如何在输入类型编号中设置限制和字符长度?

时间:2017-05-31 06:46:55

标签: javascript

我有这个JavaScript代码,它将范围值设置为1-5。

$(document).on('keyup','#getScore',function(){
    var a = $(this).attr('value');
    if($(this).val() > 5 ){
        $(this).val(a);
    }
})

现在我还想将位数设置为1.我该怎么做?

6 个答案:

答案 0 :(得分:1)

我会这样做,尝试从输入中获取正确的数字,或者改为使用有效数字:



$(document).on('input','#getScore',function(){
    var a = $(this).val();
    if (a.length > 1)
        a = a.replace(/[^1-5]/g, '').substr(-1);
    $(this).val(a > 5 ? 5 : a < 1 ? 1 : a);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="getScore">
&#13;
&#13;
&#13;

答案 1 :(得分:0)

试试这个

    $(document).on('keyup','#getScore',function(){ 
    var a = $(this).val(); 
    if(a.length> 1 &&  $(this).val() > 5) {   
 // Your code
     }
     })

答案 2 :(得分:0)

添加if($(this).val()。length&gt; 1)

答案 3 :(得分:0)

如果你的值是整数意味着,val.length需要是字符串..在获取长度之前使用.toString()

$(document).on('keyup','#getScore',function(){
    var a = $(this).attr('value');
    if($(this).val() > 5 && $(this).val().toString().length > 1 ){
        $(this).val(a);
    }
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>

答案 4 :(得分:0)

使用minmax值属性进行设置,并找到大于一个.apply % 10 %5的值,并将其转换为1-5。确保从不存在{{1}数字不符合2以上。 5三元运算符的用户可以使用a% 10 % 5 == 0 ? 1 : a% 10 % 5

进行控制

1-5
$(document).on('keyup','#getScore',function(){
    var a = $(this).val()
    if($(this).val().length > 1 ){
      a = a < 0 ? a*-1 : a; //for negative number 
            $(this).val(a% 10 % 5 == 0 ? 1 : a% 10 % 5);
    }
})

答案 5 :(得分:0)

出于好奇,如果你试图限制数字1-5之间的输入,为什么不使用数字输入?

<?php

mysql_query("DELETE FROM TABLE_NAME WHERE CONDITIONS");

?>