ono*_*rua 6 javascript odoo qweb odoo-9
我正在尝试创建一种形式,这将简化我尚未注册的产品的添加到我的小商店的命名法.为此,我创建了以下形式的模块:
<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>
Run Code Online (Sandbox Code Playgroud)
我想从条形码扫描仪填充ean13条形码字段"is_ean13",它已经被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);
})
});
Run Code Online (Sandbox Code Playgroud)
因为它是用https://media.readthedocs.org/pdf/odoo-development/latest/odoo-development.pdf第38页写的,但似乎我遗漏了一些东西,因为我无法捕捉到任何事件.
如何在POS界面中捕获条形码事件.任何帮助都非常感谢.谢谢!
小智 -2
当条形码扫描仪扫描某些内容时,它会像键盘一样写入内容,然后按 Enter 键。这就是您获取扫描信息的方式。
因此,当您打开视图时,您需要将焦点放在字段输入上,以便扫描仪写入正确的 html 输入。