ExtJS-';组合列';基于渲染器-行编辑不注册事件或执行它应该执行的操作
? 请查看函数 我没有完全使用“combocolumn”。但是,我使用了主要组件。请告知是否有可能工作。到目前为止,网格拒绝呈现列本身,我无法确定错误是什么,因为代码完全相同? 我这样做不是为了表现得聪明:)-而是为了在标准化项目通用组件之前简化并在1列上运行它 组合呈现fn() 编辑器-网格列模型中ExtJS-';组合列';基于渲染器-行编辑不注册事件或执行它应该执行的操作,extjs,Extjs,? 请查看函数 我没有完全使用“combocolumn”。但是,我使用了主要组件。请告知是否有可能工作。到目前为止,网格拒绝呈现列本身,我无法确定错误是什么,因为代码完全相同? 我这样做不是为了表现得聪明:)-而是为了在标准化项目通用组件之前简化并在1列上运行它 组合呈现fn() 编辑器-网格列模型中 { 标题:“计划类型”, 数据索引:“计划id”, 编辑:{ //allowBlank:'假', xtype:“组合框”, queryMode:'本地', 商店:planTypeStore, 显
{
标题:“计划类型”,
数据索引:“计划id”,
编辑:{
//allowBlank:'假',
xtype:“组合框”,
queryMode:'本地',
商店:planTypeStore,
显示字段:“计划名称”,
valueField:“计划id”
}
,呈现程序:ComboBoxRenderer(this.editor,'gridPanelId')
/*这是基于文档的渲染器-它不起作用*/
//,渲染器:函数(val){
//var rec=planTypeStore.findRecord('plan_id',val);
//返回(rec!==null?rec.get(“计划名称”):“”);
//}
网格面板列中的内容-现在包含整个函数,当启动rowediting时,它会显示combox编辑器,并在更新后返回,以在列中列出整个函数文本。该编辑器是什么。该编辑器是在其他地方定义的,还是应该是对上面定义的编辑器的引用渲染器?渲染器:COMBOBOX渲染器(这个编辑器,“GrpPANELID”),请仔细考虑一下,是的,这是RoxIdTuffin插件的栏目编辑器,对我来说是可疑的。我会期待<代码>这个。编辑器=新Ext.Co BOBOX({…});< /代码>,然后在模型中:<代码>编辑器:这个。编辑器< /代码>
<code>
function ComboBoxRenderer(combo, gridId) {
var getValue = function (value) {
var idx = combo.store.find(combo.valueField, value);
var rec = combo.store.getAt(idx);
if (rec) {
return rec.get(combo.displayField);
}
return value;
};
return function (value) {
if (combo.store.getCount() === 0 && gridId) {
console.log(combo.store.getCount()+gridId);
combo.store.on(
'load',
function () {
var grid = Ext.getCmp(gridId);
if (grid) {
grid.getView().refresh();
}
},
{
single: true
}
);
return value;
}
return getValue(value);
};
// Ext.getCmp(gridId).getView().refresh();
}
</code>