Javascript 避免通过条形码扫描仪扫描后自动提交表单
HTMLJavascript 避免通过条形码扫描仪扫描后自动提交表单,javascript,php,jquery,html,Javascript,Php,Jquery,Html,HTML Javascript代码: <form action="die_issue_process.php" id="form" method="post" autocomplete="off"> <input type="text" name="item_name[]" /> <input type="button" name="add_item" value="Add More" onClick="addMore();" /> <input
Javascript代码:
<form action="die_issue_process.php" id="form" method="post" autocomplete="off">
<input type="text" name="item_name[]" />
<input type="button" name="add_item" value="Add More" onClick="addMore();" />
<input type="submit" id="Search" name="Search" value="Search" />
函数addMore(){
$(“”)加载(“input.php”,function(){
$(“#product”).append($(this.html());
});
}
朋友在这个表格中我有单个文本框和添加按钮,可以根据需要添加文本框。在这张表格中,我通过条形码阅读器输入,所以一旦条形码被扫描,表格就会自动提交,但我的要求是,只有在给出提交按钮后才能提交
注意:我的表单在第一次扫描输入框时自动提交。好吧,条形码扫描仪读取条形码并自动提交! 因此,我认为您最好将输入更改为“提交”按钮
function addMore() {
$("<DIV>").load("input.php", function() {
$("#product").append($(this).html());
});
}
如果扫描仪正在输入文本框,请隐藏提交按钮启动表单。仅当文本框有数据输入时才可查看它。这可以通过javascript实现你可以把条形码扫描仪看作是一个非常专业的键盘。如果您在文本编辑器中测试条形码扫描仪。您将看到,他们只是非常快速地输入条形码表示的字符串,然后输入回车符
这些与使用键盘手动执行相同操作所需的按键无法区分
如果您关注表单中的文本字段,则按enter键通常会提交表单
要防止enter键提交文本字段上的表单,可以使用事件处理程序终止该击键,例如:
<input type="button" id="Search" name="Search" value="Search" />
您扫描的代码末尾是否包含换行符?可能是条形码扫描器正在“按回车键”,我必须同意@MikeWu。我曾经使用条形码扫描仪,它们经常在末尾添加换行符或回车符,其解释方式与按键盘上的enter键相同。不过,这可能只是扫描仪上的一个设置,您可以对其进行更改。你用的是什么条形码扫描器?
(function() {
var textField = document.getElementById('textFieldId');
if(textField) {
textField.addEventListener('keydown', function(mozEvent) {
var event = window.event || mozEvent;
if(event.keyCode === 13) {
event.preventDefault();
}
});
}
})();