使用扫码枪扫码触发接口传递参数进行查询或录入的方法
方法一:
1.先生成一个二维码,改二维码里的数据就是你要请求需要向接口所传递的数据
2.然后写一个html页面,里面就放一个input框就好了,这个input框就是用来接收你二维码里面的数据的
3.写一段js,让用户打开页面后input自动永久聚焦
4.再写一段js,检测input里面是不是有输入内容,如果有,那么则拿到里面的内容触发ajax把内容提交过去,提交成功后清除掉input里面的value值即可
附上代码:
<!DOCTYPE html>
<html>
<head>
<title>代码工坊</title>
</head>
<body>
<script type="text/javascript" src="http://libs.baidu.com/jquery/2.0.0/jquery.js"></script>
<input type="text" id="d1" value="" style="opacity:0;">
<script type="text/javascript">
var a = [];
var timeout;
$("input").keyup(function(){
a.push($(this).val());
clearTimeout(timeout);
timeout = setTimeout(function(){
var b = a.pop();
$.ajax({
url:b,
type:"post",
data:{},
jsonType:"json",
success:function(a){
$('input').val("");
console.log(a);
},
error:function(e){
alert("错误");
$('input').val("");
}
});
},1000);
});
//input自动永久聚焦
$(document).ready(function(){
$("input").focus();
})
$(function () {
$('#d1').blur(function () {
var that = this; //或者用闭包
setTimeout(function () { $(that).focus(); },100); }); });
$('#d1').blur(function() {$(this).focus();
});
</script>
</body>
</html>
方法2:
因为扫码枪在扫码的时候会自动触发submit,那么我们可以利用这个点,去实现form表单提交,代码如下:
<form method="post" action="https://www.daimagongfang.com">
<input type="text" id="d1" value="">
<input type="submit">
</form>
该方法比方法一要简单很多,因为我们是利用扫码枪自动触发submit的特效来提交,所以也不用写ajax,但是缺点就是,传递过去的数据只能是一条。