ext editgrid combobox tab切换事件
extjs吧
全部回复
仅看楼主
level 1
萧雨之泪1 楼主
前两个是下拉框,我手动输入,
然后按tab键,输入的值无法保存
2014年10月16日 06点10分 1
level 1
萧雨之泪1 楼主
var sm = grid.getSelectionModel();
/**
* 重新定义grid的tab键操作,使其可以顺序编辑表单,并在最后一行的“保险”字段点击tab时,跳出grid聚焦到下面的元素
*/
sm.onEditorKey = function(field, e){
var k = e.getKey(), newCell, g = sm.grid, ed = g.activeEditor;
if(k == e.TAB){
/*
* 如果为新增商品的最后一行(合计行的上一行)最后一个字段点击tab时,聚焦到回单元素
* 否则,按照tab原有操作进行
*/
if(ed.row == store.getCount()-2 && ed.col == 7){
e.stopEvent();
ed.completeEdit();
Ext.getCmp(*receiptHd*).focus();
}else{
e.stopEvent();
ed.completeEdit();
//定位聚焦的对象
if (e.shiftKey) {
newCell = g.walkCells(ed.row, ed.col-1, -1, sm.acceptsNav, sm);
} else {
newCell = g.walkCells(ed.row, ed.col+1, 1, sm.acceptsNav, sm);
}
}
if(newCell){
//使定位到的聚焦对象进入编辑状态(保持原有tab的功能)
g.startEditing(newCell[0], newCell[1]);
}
}else if(k == e.ESC){
ed.cancelEdit();
}
};
2014年10月16日 06点10分 2
level 1
萧雨之泪1 楼主
这是tab事件,后面的输入框都是可以的,就是下拉框按tab之后保存不了值,求大神解惑
2014年10月16日 06点10分 3
1