如何在将字段渲染到 Extjs 中的网格之前修改字段
Posted
技术标签:
【中文标题】如何在将字段渲染到 Extjs 中的网格之前修改字段【英文标题】:How to modify fields before rendering it to the grid in Extjs 【发布时间】:2016-03-28 12:48:07 【问题描述】:在将数据渲染到 ExtJs 中的网格之前,我必须为从存储中获取的数据附加一个值。
请指导我实现上述功能。
目前网格的填充方式如下:
Ext.define("MyApp.view.ShowDetails",
extend: 'Ext.grid.Panel',
requires:['MyApp.store.MyStore'],
store:'MyStore',
stateId: 'stateGrid',
selType : 'checkboxmodel',
selModel :
mode : 'MULTI'
,
plugins : [Ext.create('Ext.grid.plugin.RowEditing',
clicksToEdit : 2
)],
defaultType: 'textfield',
columns: [
header: 'Userid',
width: 150,
dataIndex: 'uid',
editor :
allowBlank : true
,
...
【问题讨论】:
你能解释一下吗?一个例子会很有用 @ankitchaudhary 例如。如果从商店获取的 ID 是“A123”,我想在网格中显示之前附加一个后缀为“A123D” 【参考方案1】:是的,这是可能的,在 MODEL
的字段声明中使用convert
属性
一个例子:
name: 'uid',
type: 'string',
convert: function (value, record)
if (!value)
return value+'D';
else
return value;
,
【讨论】:
谢谢很多 ankit 4 你的帮助 :) 如果它解决了你的问题..请你接受答案。它也会帮助其他人。 但是还有一个问题,上面的解决方案会在网格中渲染修改后的值,但是当值从网格更新到存储时,它仍然会在文本中附加'D'。以上是关于如何在将字段渲染到 Extjs 中的网格之前修改字段的主要内容,如果未能解决你的问题,请参考以下文章