我有一个ASP.NET Web应用程序,它是从条形码扫描仪读取击键的javascript。该应用程序正在ZEBRA手持式扫描仪上运行。
它在计算机浏览器上以及在低端ZEBRA(TC20硬件)上也能很好地运行,现在我想在价格更高的ZEBRA TC8000(均基于android)上使用相同的应用程序,而在扫描程序扫描代码时,一个空字符串传递给应用程序。
扫描到文本框没有问题,因此,扫描仪运行良好。浏览器中也允许使用javascript。
我正在发布javascript代码,但是网上有一个实时示例。
http://scantest.jvvs.cz/scannprint.aspx
它的工作就像您在键盘上键入一样,从开始键入500毫秒后,它就会发送到后端。每个读数都用星号括起来。是的,我是javascript的初学者。
有人可以指出我可以尝试的方法吗?我无法在设备上调试JavaScript-我相信是这样。
<script src="jquery-3.4.1.min.js">
</script>
<script type="text/javascript">
//<![CDATA[
var theForm = document.forms['form1'];
if (!theForm) {
theForm = document.form1;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
function RaiseEvent(pEventName, pEventValue) {
document.getElementById('<%=HFEventName.ClientID %>').value = pEventName;
document.getElementById('<%=HFEventValue.ClientID %>').value = pEventValue;
if (document.getElementById('<%=TextBox3.ClientID %>') != null) {
__doPostBack('<%=TextBox3.ClientID %>', '');
}
}
//]]>
</script>
<script type="text/javascript">
var temp;
var isrunning;
var tmout;
$(window).ready(function() {
$(window).keypress(function(e) {
if (isrunning == true) {
temp = this.temp + String.fromCharCode(e.keyCode);
} else {
temp = String.fromCharCode(e.keyCode);
isrunning = true;
tmout = setTimeout(function() {
isrunning = false;
RaiseEvent('ScannerInput', temp);
temp = '';
}, 500);
};
});
});
</script>