关于输入框禁止手动输入,只能扫码枪输入的代码整理

想要让输入框判断输入来源是扫码枪而不是手动输入,在网上找了一下,这个朋友整理的最全面,但是代码量有点多,有人说根据两次按键的输入间隔判断,所以个人开动了一下大脑,做了一个比较简单的

https://www.cnblogs.com/skyfynn/p/6589866.html?utm_source=tuicool&utm_medium=referral

下面是我自己写的,代码量很少,但是个人觉得足够用了

<input type="text" id="inputText"  />


var timearr = [0,0];
$('#inputText').keyup(function(e){

    if($(this).val().length%2 != 0 ){
		//求余数不为0是奇数
	    	timearr[0] = new Date().getTime();
    	}else{
	    	timearr[1] = new Date().getTime();
	}
	    //当输入第二位时判断两次输入的间隔,判断是否为手动输入,间隔过长清空值
    if($(this).val().length > 1 && Math.abs(timearr[1] - timearr[0]) > 40){
	   	$(this).val('')
     }
})


首先,定义一个长度2的数组,然后写了一个keyup事件,从input框输入第二个字符时计算第二次输入和第一次输入的间隔,当时间大于一定程度时就判定为手动输入,然后清空输入框的内容。

 

    原文作者:I'm李刚
    原文地址: https://blog.csdn.net/weixin_42421494/article/details/84657787
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞