使用 jQuery 检测 QR / 条形码输入更改事件



>我有一个工作的 QR 扫描仪在工作,扫描的 QR 被解码为textarea属性。

但是,我在检测此属性的输入以启用/禁用表单按钮元素时遇到困难。

从其他堆栈问题中,它被注意到是事件的paste类型,但keypress/keyup没有对它进行任何更改。

<textarea id="QRinput" class="QRinput"> *QR CODE DECODED* </textarea>

以及它的功能:

$(document).ready(function() {
$(':input[type="submit"]').prop('disabled', true);
$('.QRinput').keyup(function() {
if($(this).val() != '') {
$(':input[type="submit"]').prop('disabled', false);
}
});
});

我建议您处理textarea的changeinput事件,而不是keyup。您可以在本文中找到它们之间的区别。

$(document).ready(function() {
$(':input[type="submit"]').prop('disabled', true);
$('.QRinput').on('change', function() {
$(':input[type="submit"]').prop('disabled', $(this).val() === '');
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<textarea id="QRinput" class="QRinput"> *QR CODE DECODED* </textarea>
<input type='submit' value='submit btn'/>

最新更新