Javascript 移动Safari-聚焦乐趣()
我正在开发一个web应用程序,专门使用移动Safari浏览器交付给iPad客户。“我的表单”有两个输入字段,这两个字段都将填充来自配对蓝牙条形码扫描仪的数据 扫描第一个字段时,下面的javascript监视返回键,返回键解析传入字符串,然后将焦点设置为数量字段Javascript 移动Safari-聚焦乐趣(),javascript,ipad,mobile,safari,Javascript,Ipad,Mobile,Safari,我正在开发一个web应用程序,专门使用移动Safari浏览器交付给iPad客户。“我的表单”有两个输入字段,这两个字段都将填充来自配对蓝牙条形码扫描仪的数据 扫描第一个字段时,下面的javascript监视返回键,返回键解析传入字符串,然后将焦点设置为数量字段 function tabtoquantity(e) { keyEntry = event.keyCode; if(keyEntry == '13') { var barcode = documen
function tabtoquantity(e) {
keyEntry = event.keyCode;
if(keyEntry == '13') {
var barcode = document.test.barcodefield.value;
var labeltext = barcode.split("*");
document.test.itemkey.value = labeltext[0];
document.test.description.value = labeltext[1];
document.test.lotno.value = labeltext[2];
document.test.datercvd.value = labeltext[3];
document.test.binno.value = labeltext[4];
document.test.unitwgt.value = labeltext[5];
document.test.slot.value = labeltext[6];
document.test.allergens.value = labeltext[7];
document.test.kosher.value = labeltext[8];
//document.test.barcodefield.disabled="true";
//document.test.barcodefield.style.display="none";
document.test.scanqty.focus();
}
else if((keyEntry < '48') || (keyEntry > '57')) {
return false;
}
}
我不明白为什么同一个命令在一个实例中有效,而在另一个实例中无效。该功能在常规Safari中正常工作
也许这是相关的,但Mobile Safari的表单助手Prev和Next按钮在我加载页面时出现,但在我将数据扫描到第一个字段后消失……我希望它将焦点设置为ScanQuantity字段,但似乎没有设置焦点
我非常感谢您的任何输入/帮助。如果您已将网站添加到主屏幕并使用此链接打开网站,则focus似乎只能工作。为什么要使用enter键?传统上,它提交表单。在桌面浏览器中,选项卡将移动到下一个字段,在mobile Safari中,下一步按钮也会这样做。然后使用tabIndex设置scanqty字段的焦点,并使用barcodefield.onblur调用侦听器。更准确地说,enter键是条形码扫描仪附加到扫描数据上的字符。我想我可以将其编程为附加一个制表符,并在blur上解析数据字符串,而不是监视特定的按键。谢谢,我可以试试。比尔,如果你能控制扫描仪的输出,你可能想让它在一个输入框中转储所有内容,并解析/重新分发数据。我非常怀疑是否有任何关于键盘输入元素焦点的保证,以及任何涉及动态焦点切换的解决方案都是脆弱的。
function qtyreset() {
document.test.scanqty.value = '';
document.test.scanqty.focus();
}