动态分配列名称

时间:2015-09-22 08:51:19

标签: javascript extjs

我试图将值放在列中而不必编写网格的列名。在评论部分是我试图做的。有什么帮助吗?

if(btn.id == "btn_update1") {

                var recordToUpdate = grid.getSelectionModel().getSelection()[0];
                //var gridCoulumnlength=grid.columns.length;
                //for(var i=0;i<gridCoulumnlength;i++){
                //recordToUpdate.set('grid.columns[i]',Ext.getCmp('update_name').getValue());
                recordToUpdate.set('FirstName',Ext.getCmp('update_name').getValue());
                recordToUpdate.set('LastName',Ext.getCmp('update_lastname').getValue());
                recordToUpdate.set('Email',Ext.getCmp('update_email').getValue());
                //}
}

1 个答案:

答案 0 :(得分:0)

首先,使用更新数据创建对象。

var update = {
  'FirstName': Ext.getCmp('update_name').getValue(),
  'LastName': Ext.getCmp('update_name').getValue(),
  'Email': Ext.getCmp('update_name').getValue()
}

然后你可以得到行数据。

var recordToUpdate = grid.getSelectionModel().getSelection()[0].data;

然后循环并放置值。

for (var key in recordToUpdate) {
   if (update.hasOwnProperty(key)) {
      recordToUpdate[key] = update[key];
   }
}