我有一个输入框,可以从条形码扫描仪的输入处填充该信息。
<input type="text" autofocus class="form-control m-input" id="productSearch" aria-describedby="emailHelp" placeholder="Product name">
但是问题是,每当输入框充满输入时,它应该为空并将相关值添加到表中。 我已经使用以下功能来做到这一点。相关值会自动添加到表中,但问题在于它还会显示自动提示。我如何停止显示自动提示以及将值设为空。
$("#productSearch").keypress(function(event) {
if (event.which == '10' || event.which == '13') {
// alert(this.value)
$.ajax({
type: "get",
url: "{!! asset('searchByProductName') !!}",
dataType: 'json',
data: {
name: this.value
},
success: function(response) {
// console.log(response)
if ($('#' + response.id).length !== 0)
return;
var markup = "<tr id=" + response.id + "><input type='hidden' name='product_id[]' value=" + response.id + "><td><i class='flaticon-delete-1 delete-row' onclick='deleteRow(this)'></i></td><td>" + response.product_name + "</td><td>" + response.product_unit_price + "</td><td><input type='text' name='quantity[]' class='quantity' value='1'></td><td class='total'>" + response.product_unit_price + "</td><td>" + response.notes + "</td></tr>";
$("table tbody").append(markup);
calculateSum();
$('.quantity').on('keyup', function() {
var currentRow = $(this).closest("tr");
var col3 = currentRow.find("td:eq(2)").text();
var data = col3 * $(this).val();
currentRow.find("td:eq(4)").text(data.toFixed(2))
calculateSum();
});
$(this).val("");
return false;
}
});
event.preventDefault();
}
});
这里提到。如果条形码扫描仪找不到值,我也使用上述输入框实施了自动提示。
答案 0 :(得分:0)
条形码扫描器的工作原理类似于键盘。它是文本输入设备。将函数写入文本框的文本更改事件。检查字符串的长度,然后调用一个函数以将字符串添加到数据库并清除文本字段。 希望这可以帮助。
答案 1 :(得分:0)
关闭自动填充
<input type="text" autofocus class="form-control m-input" id="productSearch" aria-describedby="emailHelp" placeholder="Product name" autocomplete="off">