【问题标题】:How to display value in grid column.如何在网格列中显示值。
【发布时间】:2016-08-11 07:54:30
【问题描述】:

我有一个四列的 extJS 网格。在第三列上,我正在通过按钮修改值并能够显示。在第四列中,我得到空字符串 "" 作为数据。我正在提供一些输入并尝试将其保存在商店中,但它没有发生。如何在 extjs 网格存储中保存价值。

var grid = Ext.getCmp('gridID');
    var gridstore = grid.getStore();
    var modify = gridstore.modified;
    for (var i = 0; i < modify.length; i++) {
             modifyRec[i].data.S = "Hello";
}

S 是列的数据索引。

【问题讨论】:

    标签: javascript extjs extjs3


    【解决方案1】:

    比直接更改属性更好的方法是使用 set。

    var grid = Ext.getCmp('gridID');
    var gridstore = grid.getStore();
    var modify = gridstore.modified;
    for (var i = 0; i < modify.length; i++) {
             modifyRec[i].set('S', "Hello");
    }
    

    编辑: 在Ext-data-AbstractStore afterEdit 触发update 事件。这是从Modelset调用的

    【讨论】:

    • 我尝试了同样的方法,但没有得到。我在调试器中获取我的值,但在 UI 中它没有出现。
    • 它不在屏幕上呈现。
    • 你能否提供一个小提琴它是如何不工作的。它应该可以工作.. Store 会触发一个更新事件,该事件将刷新网格。除非有什么问题。
    • 是的,我正在存储中获取这些值(在调试器中检查)。 Store 在哪里触发更新事件?
    • 谢谢。我正在努力。
    【解决方案2】:

    我为你准备了一些小提琴。希望对你有帮助:

    https://fiddle.sencha.com/#fiddle/1f56

    为了获取修改后的记录,我使用了 getModifiedRecords() 函数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多