javascript - 如何访问 EXT JS 网格单元中存在的控件,如复选框、组合框、文本框等

标签 javascript extjs

我们是否有一些通用方法来访问 Ext JS 网格列中存在的任何类型的控件?例如,我们在 5 行列中的组合框中选择一个值,或者选择一个复选框等。

我已经为这个问题苦苦挣扎了很长一段时间,任何帮助将不胜感激。

提前致谢!

示例:

带有复选框的网格 Grid with Check Box

带有单选按钮的网格 Grid with Radio Button

带有组合框的网格

Grid with Combo Box

最佳答案

你不知道。

如果您想以编程方式更改网格中的值,则可以在网格的存储中更改它。编辑器只是用户的一个小 helper 。

所以你要做的就是找到绑定(bind)到网格的商店:

var store = grid.getStore()

你得到第一条记录:

var record = store.getAt(0); // zero-based index!

然后你得到第五列:

var column = grid.columns.getAt(4); // zero-based index!

以及 dataIndex(列中显示的字段):

var dataIndex = column.dataIndex

然后您在该 dataIndex 处设置记录的值:

record.set(dataIndex, "myNewValue")

如果您必须始终使用例如组合框的第三个值,无论组合框内有什么,您都必须获取如下值:

var combobox = column.getEditor(),
    comboStore = combobox.getStore(),
    comboRecord = comboStore.getAt(2), // zero-based index
    valueField = combobox.valueField,
    value = comboRecord.get(valueField);

关于javascript - 如何访问 EXT JS 网格单元中存在的控件,如复选框、组合框、文本框等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38939686/

相关文章:

javascript - 根据 Angular 范围值更改 CSS

javascript - jquery 两个输入值的总和

javascript - ExtJS 4 - 在 MVC 架构中重用组件

javascript - ExtJS 在已经添加的面板上方添加面板

javascript - Extjs 存储不适合 JSON

javascript - 搜索结果链接

javascript - json 上的对象数组 - http put

java - GXT 3.0 网格小部件搜索

javascript - 如何将空行添加到 ExtJS 网格?

php - 使用 jquery 更改多个动态 PHP 生成的文本框的值