Javascript 如何设置输入类型编号的限制和字符长度?
我有一段JavaScript代码,它将范围值设置为1-5Javascript 如何设置输入类型编号的限制和字符长度?,javascript,Javascript,我有一段JavaScript代码,它将范围值设置为1-5 $(document).on('keyup','#getScore',function(){ var a = $(this).attr('value'); if($(this).val() > 5 ){ $(this).val(a); } }) 现在我还想把位数设为1。我该怎么做呢?试试这个 $(document).on('keyup','#getScore',function(){
$(document).on('keyup','#getScore',function(){
var a = $(this).attr('value');
if($(this).val() > 5 ){
$(this).val(a);
}
})
现在我还想把位数设为1。我该怎么做呢?试试这个
$(document).on('keyup','#getScore',function(){
var a = $(this).val();
if(a.length> 1 && $(this).val() > 5) {
// Your code
}
})
添加if($(this.val().length>1)如果您的值是整数,则表示,
val.length
需要为字符串。。在获取长度之前,请使用.toString()
$(document).on('keyup','getScore',function(){
var a=$(this.attr('value');
如果($(this.val()>5&&$(this.val().toString().length>1){
$(此).val(a);
}
})
设置min
和max
值属性,并找到大于1的值长度。应用%10%5
将其转换为1-5
。肯定不存在2
数字,不能与上面的5
匹配。而a%10%5==0的用户?1:a%10%5
三值运算符及其控制与1-5
$(document).on('keyup','getScore',function(){
var a=$(this.val()
如果($(this.val().length>1){
a=a<0?a*-1:a;//表示负数
$(this).val(a%10%5==0?1:a%10%5);
}
})
出于好奇,如果您试图将输入限制在数字1-5之间,为什么不使用数字输入
<form>
Quantity (between 1 and 5):
<input type="number" name="quantity" min="1" max="5">
</form>
数量(介于1和5之间):
我会这样做,尝试从输入中获取正确的数字,或者输入有效的数字:
$(document).on('input','getScore',function(){
var a=$(this.val();
如果(a.长度>1)
a=a.替换(/[^1-5]/g',).substr(-1);
$(this).val(a>5?5:a<1?1:a);
});代码>
我想我将使用onkeypress而不是onkeypress。负数如何?如果长度大于1,我希望我的输入类型将返回false