我正在尝试创建一种形式,这种形式可以简化我的小商店中尚未注册到产品命名的产品的添加。为此,我创建了以下形式的模块:
<t t-extend="ConfirmPopupWidget">
<t t-jquery="p.body" t-operation="replace">
<div class="product-container">
<div id="search_row" style="padding-bottom: 12px;padding-top: 11px;border-bottom: 1px solid gray;">
<label>Barcode </label>
<input style="height: 18px;" type="text" id="is_ean13" class="search" placeholder="EAN13 Barcode"/>
</div>
<div class="form-group">
<label for="is_name" class="col-sm-2 control-label">Product Name </label>
<div class="col-sm-10">
<input type="text" id="is_name" class="form-control" placeholder="Product name" style="height: 32px;background-color:#D2D2FF"/>
</div>
</div>
<div class="form-group">
<label for="is_sale_price" class="col-sm-2 control-label">Sale price</label>
<div class="col-sm-10">
<input type="text" id="is_sale_price" class="form-control" placeholder="Sale Price"/>
</div>
</div>
<div class="form-group">
<label for="is_internal_reference" class="col-sm-2 control-label">Internal Reference</label>
<div class="col-sm-10">
<input type="text" id="is_internal_reference" class="form-control" placeholder="Internal Reference"/>
</div>
</div>
</div>
</t>
</t>
我想填写ean13条形码字段&#34; is_ean13&#34;来自条形码扫描仪,已经被POS接口使用,但无法使其正常工作。
odoo.define('instant_sale.add_product', function (require) {
"use strict";
var bus = core.bus;
// bind event handler
bus.on('barcode_scanned', this, function(barcode) {
this.scan(barcode);
})
});
正如https://media.readthedocs.org/pdf/odoo-development/latest/odoo-development.pdf第38页所写,但似乎我错过了一些东西,因为我无法捕捉到任何事件。
如何在POS界面中捕获条形码事件。任何帮助都非常感谢。谢谢!
答案 0 :(得分:-1)
当条形码扫描仪扫描某些内容时,它将像是键盘一样将其写入,然后按Enter。这是您获取扫描信息的方式。
因此,在打开视图时,您需要将重点放在字段输入上,以便扫描程序以正确的html输入进行书写。