【问题标题】:Having issues capturing rowIndex in column renderer在列渲染器中捕获 rowIndex 时遇到问题
【发布时间】:2012-02-22 01:48:33
【问题描述】:

我正在尝试使用 CheckBoxSelectionModel 在网格中选中一个框。
当网格从我的商店加载数据时,如何获取正在加载的行的 rowIndex?我想测试特定列 dataIndex 的值,并根据我想选择行开头的框的值。 此代码不起作用,但这是我想做的:

   columns:

            [
                    {dataIndex: 'de_sealed_doc', renderer: function(value,rowIndex,store,record){

                    console.log('rowIndex == '+rowIndex);

                    var sealedDocIndex = this.rowIndex;

                    //var gridModel = grid.getSelectionModel().select(2);

                    grid.getSelectionModel().select(sealedDocIndex);

                    //grid.getSelectionModel().selectAll();

                    console.log('sealedDocIndex --> '+sealedDocIndex);
                    //console.log('gridModel--> '+gridModel);
                    console.log('value--> '+value);



                    },

                    hidden: true},

                    {header: 'Document #', dataIndex: 'de_seqno', width: 100},
                    {header: 'Docket Text', dataIndex: 'docketText', renderer: this.customRenderer, width: 1000},
                    {header: 'Document(s)', dataIndex: 'docsDisplay', width: 500}

            ],

有人可以帮我解决这个问题吗?如果您需要查看更多代码以使其更有意义,请告诉我。

【问题讨论】:

  • 我不确定我是否完全理解您的问题,您尝试呈现为复选框的数据是真还是假?
  • 不,但感谢您的回复。我想测试 dataIndex 的值,在本例中为“de_sealed_doc”,如果该值不等于“y”,我想检查该值所在的行框。 @Abdel 的解决方案奏效了。

标签: extjs4 renderer


【解决方案1】:

您只需对代码进行少量修改即可使其正常工作。以下是您需要的修复:

  1. 您需要拥有正确的renderer function。以下示例可帮助您获取所需的所有数据:

    renderer: function(value,meta,record,rowIndex,colIndex,store,view){ // code goes here }

  2. 确保正确调用选择模型的select 方法。这是一个例子:

    selModel.select(rowIndex,true); // The second param set true is MUST if you need multiselect!

所以,你的代码应该是这样的:

renderer: function(value,meta,record,rowIndex,colIndex,store,view){     

    if(record.get('de_sealed_doc') == true){  // put your correct condition
        grid.getSelectionModel().select(rowIndex,true);
    }
}

【讨论】:

  • 这行得通!非常感谢你。如果您不介意我问,您是如何得出该解决方案的。在搜索各种论坛之前,我阅读了 Sencha 文档,它非常有限。我只知道这些渲染器参数存在,因为我查看了 Ext.grid.column.Column.getIndex() 函数的源代码。您能否推荐任何书籍或网站,以减轻为此类事情寻找解决方案的痛苦?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-13
  • 2010-11-02
  • 2020-05-28
  • 1970-01-01
  • 1970-01-01
  • 2021-04-14
相关资源
最近更新 更多