我有一个使用单个输入表单的网络应用程序,通过条形码扫描仪填充。我注意到条形码扫描器过早提交超过6个字符的条形码,导致表单提交不正确的数据。我已经设法阻止条形码扫描仪返回(可以通过编程完成,但我们通过条形码扫描仪,所以我更喜欢它是即插即用的员工)。我的问题是 - 在输入完整的7个字符之前,如何确保表单没有提交?任何建议表示赞赏
这是我的表格
<form action="PupListMobile.php" id="my_form" method="get">
<label for="text-1"></label>
<input type="text" autofocus name="sID" id="sID" value="" id="my_button" placeholder="CLICK TO SCAN:">
<input type="hidden" name="lane" value="1" />
<input id="subHere"type="submit" value="Submit" />
</form>
这是我的J查询
$('#sID').keyup(function(){
if(this.value.length ==7){
$('#subHere').click();
}
});
$(document).ready(function() {
$(window).keydown(function(event){
if(event.keyCode == 13) {
event.preventDefault();
return false;
}
});
});
答案 0 :(得分:1)
形式:
<form action="PupListMobile.php" id="my_form" method="get">
<label for="text-1"></label>
<input type="text" autofocus name="sID" id="sID" value="" placeholder="CLICK TO SCAN:">
<input type="hidden" name="lane" value="1" />
<input id="subHere"type="submit" value="Submit" />
</form>
不确定为什么它不适用于Iphone / pad。
使用Javascript:
<script>
$(function() {
$('#my_form').submit(function(event) {
if ($('#sID').val().length < 7) {
event.preventDefault();
// maybe display message to user
}
});
});
</script>