我做了一个新的小部件
Char
烧焦
:
<t t-name="FieldRed" t-extend="FieldChar">
<t t-jquery="input" t-operation="attributes">
<attribute name="id">barcode_input</attribute>
<attribute name="class">o_form_input bg-red</attribute>
</t>
</t>
然后,我只尝试在加载时用一些文本填充字段(我知道我可以不用JavaScript来完成这项工作,但我需要从我的实际目的开始管理它)。所以,我这样做了:
var FieldRed = widget.FieldChar.extend({
template: 'FieldRed',
events: _.extend({}, widget.FieldChar.prototype.events, {
'load': 'on_load',
'ready': 'on_ready',
'keypress': 'on_keypress',
}),
init: function (field_manager, node) {
console.log('INIT');
this._super(field_manager, node);
this.$el.parent().find('input').val('INIT');
},
on_load: function (e) {
console.log('LOAD');
this.$el.parent().find('input').val('LOAD');
},
on_ready: function (e) {
console.log('READY');
this.$el.parent().find('input').val('READY');
},
on_keypress: function (e) {
console.log('KEYPRESS');
this.$el.parent().find('input').val('KEYPRESS');
},
})
input
元素
this.$el
this.$el.parent()
,是因为
输入
元素是否在原始模板中声明?
输入
keypress
,但同一行代码在中不起作用
init
方法,也不是
load
也不是
ready
事件。我怎样填写这篇文章
输入
每次用户打开包含“我的小部件”字段的窗体时,是否为?