extjs EditorGridPanel点击如何获取某行的某个数据
extjs EditorGridPanel点击怎么获取某行的某个数据
如图点击TextField某行后 把对应的 那行列字段 (11公司 和保荐人)显示在弹出来的 EditorGridPanel里,我这是又加载了一遍数据,所以外面有6行,里面显示6行,这就错了! 还可以添加 保存后把添加的那两个字段又追加到后面以/ 隔开显示在外面 的 EditorGridPanel对应的 字段里 ?
弹出来的 grid
var wingrid = new Ext.grid.EditorGridPanel({
autoHeight: true,
store: store2,
cm: cm,
clicksToEdit:1,
selModel:smche,//多选可选
tbar: new Ext.Toolbar(['-', { //添加
text: '添加一行',
handler: function(){
var _com = Ext.getCmp('a');
var _com2 = Ext.getCmp('b');
if(_com.lastSelectionText==null||_com2.lastSelectionText==null){
return;
}
var initValue = {name:'',daima:''};//添加的值
var p = new Record(initValue);
wingrid.stopEditing();
store2.insert(0, p);
wingrid.startEditing(0, 0);
p.dirty = true;
p.modified = initValue;
if(store2.modified.indexOf(p) == -1){
store2.modified.push(p);
}
}
}, '-', {
text: '删除几行',
handler: function(){ //删除
Ext.Msg.confirm('信息', '确定要删除?', function(btn){
if (btn == 'yes') {
var ssm = wingrid.getSelectionModel();
var cell = ssm.getSelections();//获取选中的全部记录,返回一个数组,里面全是record类型
if(cell.length==0){ //是否选择
Ext.MessageBox.alert("提示", "请选择");
}else{
//var record = store.getAt(cell[0]);
//store.remove(record);
for(var i = 0,len = cell.length;i<len;i++ ){//删除选中
wingrid.store2.remove(cell[i]);
}
}
}
});
}
},{
text: '保存',
handler: function(){
var m = store.modified.slice(0);
var jsonArray = [];
Ext.each(m, function(item) {
jsonArray.push(item.data);
});
Ext.lib.Ajax.request(
'POST',
{success: function(response){
Ext.Msg.alert('信息', response.responseText, function(){
});
},failure: function(){
Ext.Msg.alert("错误", "与后台联系的时候出现了问题");
}}
);
}
}, '-'])
});上面说了这个store2实际上是又查了一遍action 所以不是这样弄,怎么在外面点击某行后 弹出来的里面就获取外面点击某行的某些列的数据显示在对应的里面 ,添加 保存后直接 在后面追加 以/ 隔开 请教好心高手
------解决思路----------------------
http://down.51cto.com/data/310199
百度一下有很多啊。。2.0和2.0.2差不了很多
ext2.0 api chm
如图点击TextField某行后 把对应的 那行列字段 (11公司 和保荐人)显示在弹出来的 EditorGridPanel里,我这是又加载了一遍数据,所以外面有6行,里面显示6行,这就错了! 还可以添加 保存后把添加的那两个字段又追加到后面以/ 隔开显示在外面 的 EditorGridPanel对应的 字段里 ?
弹出来的 grid
var wingrid = new Ext.grid.EditorGridPanel({
autoHeight: true,
store: store2,
cm: cm,
clicksToEdit:1,
selModel:smche,//多选可选
tbar: new Ext.Toolbar(['-', { //添加
text: '添加一行',
handler: function(){
var _com = Ext.getCmp('a');
var _com2 = Ext.getCmp('b');
if(_com.lastSelectionText==null||_com2.lastSelectionText==null){
return;
}
var initValue = {name:'',daima:''};//添加的值
var p = new Record(initValue);
wingrid.stopEditing();
store2.insert(0, p);
wingrid.startEditing(0, 0);
p.dirty = true;
p.modified = initValue;
if(store2.modified.indexOf(p) == -1){
store2.modified.push(p);
}
}
}, '-', {
text: '删除几行',
handler: function(){ //删除
Ext.Msg.confirm('信息', '确定要删除?', function(btn){
if (btn == 'yes') {
var ssm = wingrid.getSelectionModel();
var cell = ssm.getSelections();//获取选中的全部记录,返回一个数组,里面全是record类型
if(cell.length==0){ //是否选择
Ext.MessageBox.alert("提示", "请选择");
}else{
//var record = store.getAt(cell[0]);
//store.remove(record);
for(var i = 0,len = cell.length;i<len;i++ ){//删除选中
wingrid.store2.remove(cell[i]);
}
}
}
});
}
},{
text: '保存',
handler: function(){
var m = store.modified.slice(0);
var jsonArray = [];
Ext.each(m, function(item) {
jsonArray.push(item.data);
});
Ext.lib.Ajax.request(
'POST',
{success: function(response){
Ext.Msg.alert('信息', response.responseText, function(){
});
},failure: function(){
Ext.Msg.alert("错误", "与后台联系的时候出现了问题");
}}
);
}
}, '-'])
});上面说了这个store2实际上是又查了一遍action 所以不是这样弄,怎么在外面点击某行后 弹出来的里面就获取外面点击某行的某些列的数据显示在对应的里面 ,添加 保存后直接 在后面追加 以/ 隔开 请教好心高手
------解决思路----------------------
http://down.51cto.com/data/310199
百度一下有很多啊。。2.0和2.0.2差不了很多
ext2.0 api chm