我正在使用QR码阅读器JavaScript 此JavaScript使用相机捕获图像,尝试解码QR码并将解码后的文本设置为TextArea作为输出。
这很好用。
但是当文本设置为TextArea时,我需要捕获事件,以便我可以进行进一步处理。
我尝试了以下可用解决方案的不同组合:
第1次
$('.barcodeInput').change(function(){
debugger;
alert("changed");
});
第二
$('body').delegate('.barcodeInput', 'keyup change', function(){
alert("changed");
});
第三
$('.barcodeInput').bind('input propertychange', function () {
debugger;
alert("changed");
});
我已经定义了document.ready(function(){ // code here});
但它仍然不是在徘徊。
我的QR码解码JavaScript成功解码后将文本设置为TextArea。
我可以从JavaScript手动触发事件,但这将是补丁工作。
我希望永久解决这些问题。
谢谢是提前
答案 0 :(得分:2)
您可以使用change()
或.on()
附加活动,例如:
$('.barcodeInput').change(function(){
alert("changed");
});
//Or
$('.barcodeInput').on('change', function(){
alert("changed");
});
您可以在更改文本时调用该事件:
textarea.val('new val').change();
//Or
textarea.val('new val').trigger('change');
注意: bind
和delegate
已被弃用。
希望这有帮助。
$('.barcodeInput').on('change', function(){
alert("changed");
});
$('.barcodeInput').val('new val').change();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea class='barcodeInput'></textarea>