从两个标签面板中的两个网格同时选择类似记录?

时间:2013-05-07 09:14:11

标签: javascript extjs extjs-mvc

  

* 我想从grid1和grid2中选择类似的记录,同时在grid1中选择记录。 *

例如说如果emp_id 1有dept_id A和B而emp_id 2有dept_id C,D和E. 用户选择dept_id D.在后面自动,应该选择emp_id 2和dept_id C和E. 如果用户选择emp_id 1和2,则在后面选择所有五个dept_id。

Adding event handler for grid : 

{
 xtype : 'grid1',                                                           
 id:'accsearchgrid',
 cls:'accsearchgrid;                                                   
     listeners : {
                    select : function( thisobj, record, index, eOpts ){
                                 console.log("selected");
                                 var AccGridDetails = Ext.getCmp('accsearchgrid');//my grid1
                                 var GrpGridDetails = Ext.getCmp('grpsearchgrid');//my grid2
                                 var Accselection = AccGridDetails.getSelectionModel();
                                 var Grpselection = GrpGridDetails.getSelectionModel();
                                 var Accstore = Ext.getStore('AccDetailsStore');//grid1 store
                                 var Grpstore = Ext.getStore('GrpDetailsStore');//grid2 store
                                 items=[];
                                 for(i=0;i < Accstore.getCount();i++)
                                 {                  
                                    if(Accselection.isSelected(i))      
                                    {
                                       items.push({ 
                                          "prbalgrp"      : Accstore.getAt(i).data.prbalgrp //field which is same in both the grids.
                                        });
                                    }
                                 }
                                 var EncodeItems = Ext.encode(items);
                                 for(j=0; j < items.length ;j++)
                                 {
                                    for(i=0;i < Grpstore.getCount();i++)
                                    {
                                      console.log("items[j]pppp-->"+ items[j].prbalgrp);
                                      if(Grpstore.getAt(i).data.prbalgrp == items[j].prbalgrp){
                                          Ext.getCmp('grpsearchgrid').getSelectionModel().select(i); // error for first time  afterwards their is no problem but only one single record is seleted
                                      }
                                    }   
                                  }  
                                }   
                          }
            },
  

我只能在其他网格中选择一条记录。   但我开始得到的错误是:Uncaught TypeError:无法调用未定义的方法'getAt'ext-all-debug.js:59297   第二次,我的意思是在选择第二个记录后,它工作正常。   请帮忙解决这个问题。

0 个答案:

没有答案