我使用Rateit在openerp中创建了自定义评级小部件。
但是小部件总是可编辑的,只有当我点击'编辑' 按钮并且我怎么知道它处于只读模式时,如何才能使其可编辑?
XML
<field name="rating" widget="rating"/>
JS
instance.my_module.Rating = instance.web.form.FieldChar.extend({
template : "rating",
init: function(field_manager, node){
this._super.apply(this, arguments);
},
start: function() {
var self = this;
$('#rateit').rateit({
value: 0,
resetable: false
});
},
});
答案 0 :(得分:1)
最后我得到了它,这是我的代码
start: function() {
var self = this;
this.field_manager.has_been_loaded.done(function() {
$('#rateit').rateit({
value: 0,
resetable: false
});
self.field_manager.on("change:actual_mode", self, self.check_actual_mode);
self.check_actual_mode();
});
},
check_actual_mode: function(source, options) {
var self = this;
if(self.field_manager.get("actual_mode")=='view'){
$('#rateit').rateit('readonly',true);
}
else {
$('#rateit').rateit('readonly',false);
}
}