以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]两个AddVcodeButton控件调用JS扫码失败  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=131665)

--  作者:laipiwen
--  发布时间:2019/3/4 9:52:00
--  [求助]两个AddVcodeButton控件调用JS扫码失败
在同一页面中新增两个 AddVcodeButton 用于扫码输入,js代码如下:
wx.ready(function () {
    document.getElementById("number").focus();  //打test.htm这个页面后,焦点自动定到  addInput("number","扫描录入","text")  这个输入框里
    document.getElementById(\'scan\').onclick = function () {
        wx.scanQRCode({
            needResult: 1,
            scanType: [\'qrCode\',\'barCode\'],
            success: function (res) {
                var code = res.resultStr;
//alert(code)
                  if(code.indexOf(",") >= 0){
                   code = code.split(",")[1];
                  }
//alert(code)
                document.getElementById(\'number\').value = code;

    document.getElementById(\'scan1\').onclick = function () {
        wx.scanQRCode({
            needResult: 1,
            scanType: [\'qrCode\',\'barCode\'],
            success: function (res1) {
                var code1 = res1.resultStr;
//alert(code)
                  if(code1.indexOf(",") >= 0){
                   code1 = code1.split(",")[1];
                  }
//alert(code)
                document.getElementById(\'number1\').value = code1;


 
                var result = submitAjaxFileds(\'itsbscangetname.htm\',\'\',\'number\',false);
//alert(result)
                        if(result){
                                 var vals=result.split("||");
                                 //if(vals.length==6){
                                    if(6==6){
                                     document.getElementById("lbh").value=vals[0];
                                     document.getElementById("sbfl").value=vals[1];
document.getElementById("sbmc").value=vals[2];
document.getElementById("ggxh").value=vals[3];
document.getElementById("xlh").value=vals[4];
                                     document.getElementById("xzrgs").value=vals[6];
                                     document.getElementById("xzrbm").value=vals[5];
                                     document.getElementById("xzrr").value=vals[7];
document.getElementById("ccpz").value=vals[8];
                                     document.getElementById("bz").value=vals[9];
                                 }  
                        }      
            }
        });
    };
});
wx.error(function (res) {
    //alert(res.errMsg);
});

请老师指点一下。

--  作者:有点甜
--  发布时间:2019/3/4 10:15:00
--  

1、你的意思是,如果只添加1个 AddVcodeButton,就可以调用成功?

 

2、你用web工具测试,报什么错? https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1455784140

 


--  作者:laipiwen
--  发布时间:2019/3/4 10:22:00
--  
以下是引用有点甜在2019/3/4 10:15:00的发言:

1、你的意思是,如果只添加1个 AddVcodeButton,就可以调用成功?

 

2、你用web工具测试,报什么错? https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1455784140

 是的  一个AddVcodeButton 可以成功调用,js里面 submitAjaxFileds 也可以成功,按照这个思路 写了两个 AddVcodeButton 用于不同的 扫码输入,结果什么错误都没有。摄像头扫码的界面都不能打开,点击扫码输入  什么反应都没有。


--  作者:有点甜
--  发布时间:2019/3/4 10:31:00
--  

wx.ready(function() {
    document.getElementById("number").focus(); //打test.htm这个页面后,焦点自动定到  addInput("number","扫描录入","text")  这个输入框里
    document.getElementById(\'scan\').onclick = function() {
        wx.scanQRCode({
            needResult: 1,
            scanType: [\'qrCode\', \'barCode\'],
            success: function(res) {
                var code = res.resultStr;
                //alert(code)
                if (code.indexOf(",") >= 0) {
                    code = code.split(",")[1];
                }
                //alert(code)
                document.getElementById(\'number\').value = code;

                var result = submitAjaxFileds(\'itsbscangetname.htm\', \'\', \'number\', false);
                //alert(result)
                if (result) {
                    var vals = result.split("||");
                    //if(vals.length==6){
                    if (6 == 6) {
                        document.getElementById("lbh").value = vals[0];
                        document.getElementById("sbfl").value = vals[1];
                        document.getElementById("sbmc").value = vals[2];
                        document.getElementById("ggxh").value = vals[3];
                        document.getElementById("xlh").value = vals[4];
                        document.getElementById("xzrgs").value = vals[6];
                        document.getElementById("xzrbm").value = vals[5];
                        document.getElementById("xzrr").value = vals[7];
                        document.getElementById("ccpz").value = vals[8];
                        document.getElementById("bz").value = vals[9];
                    }
                }
            }
        });
    };

    document.getElementById(\'scan1\').onclick = function() {
        wx.scanQRCode({
            needResult: 1,
            scanType: [\'qrCode\', \'barCode\'],
            success: function(res1) {
                var code1 = res1.resultStr;
                //alert(code)
                if (code1.indexOf(",") >= 0) {
                    code1 = code1.split(",")[1];
                }
                alert(code);

                document.getElementById(\'number1\').value = code1;
            }
        })
    }
});
wx.error(function(res) {
    //alert(res.errMsg);
});

[此贴子已经被作者于2019/3/4 11:10:36编辑过]

--  作者:laipiwen
--  发布时间:2019/3/4 11:04:00
--  
可以了,万分感谢。