【发布时间】:2016-06-07 11:57:38
【问题描述】:
我正在使用条形码扫描仪将数据输入网页上的输入字段。我在第一个输入字段上设置了表单和自动对焦。当第一个条形码输入到第一个输入字段时,我希望焦点跳转到下一个输入字段。但是,只要我输入第一个条形码,表格就会“提交”。这是我正在使用的html:
<form id="barcode1" name="barcode" method="Post" action="#">
<div>
<label for="S1">Barcode 1 </label>
<input id="S1" class="bcode" type="text" name="S1" autofocus/>
<label for="S2">Barcode 2 </label>
<input id="S2" class="bcode" type="text" name="S2" />
<label for="S3">Barcode 3 </label>
<input id="S3" class="bcode" type="text" name="S3" />
</div>
<p><input type="submit" name="Submit" value="Submit"></p>
</form>
我已经尝试过类似 SO 问题 here 和 [这里] (http://jsfiddle.net/davidThomas/ZmAEG/) 的解决方案,但它们似乎不起作用。
理想情况下,我希望有一个类似这样的解决方案(上面的第二个链接),所以请让我知道它在哪里或为什么不起作用以及我可以做些什么来解决它。
$('form').on('keypress','input',function(e){
var eClassName = this.className,
index = $(this).index('.' + eClassName) + 1;
if (e.which === 13){
e.preventDefault();
$('input.' + eClassName)
.eq(index)
.focus();
}
});
【问题讨论】:
标签: javascript jquery barcode-scanner