0
행 확장기를 사용하여 격자를 만들려고 시도하는 중 이상한 동작이 발생했습니다.ExtJS RowExpander plugin 이상한 colspan
첫 번째 행의 확대보기 GET 3 (테이블의 열 수)의 열 병합의, 두 번째는 2의 열 병합을 얻고있는 다음 행이 왜 누군가가 설명해 주실 1.
의 열 병합을 얻을 그리고 확장 된 행의 내용을 모두 채우도록 지정하는 방법도 있습니다 (테이블의 열 수로 설정된 colspan).
JSFiddle :
코드 :
Ext.onReady(function(){
var store = Ext.create('Ext.data.Store',{
fields: ['id','name','ship'],
data: [{
id: 1,
name: 'Kirk',
ship: 'Enterprise'
},{
id: 2,
name: 'Picard',
ship: 'Enterprise'
},{
id: 3,
name: 'Janeway',
ship: 'Voyager'
},{
id: 4,
name: 'Khan',
ship: 'Reliant'
}]
});
Ext.create('Ext.grid.Panel',{
title: 'Test',
renderTo: Ext.getBody(),
store: store,
columns: [{
text: 'ID',
dataIndex: 'id'
},{
text: 'Name',
dataIndex: 'name'
},{
text: 'Ship',
dataIndex: 'ship'
}],
plugins: [{
ptype: 'rowexpander',
rowBodyTpl: [
'<div class="row-details-panel" id="row-details-panel-{id}">{id} = {name}</div>'
]
}],
listeners: {
afterrender: function (grid) {
// hide the first row generated by rowExander plugin
grid.getView().getHeaderAtIndex(0).hide();
}
}
});
});
fiddle.sencha.com (4.2.1 classic)에서 위 코드를 실행 해 보았습니다 (onReady()가 제거되었습니다). 여기 모든 행은 일관되게 colspan 2가 아니라 colspan 3 (전체 테이블)이됩니다. 리스너 afterrender 메서드에서 행을 제거하지 않으면 모든 행이 colspan 3을 얻습니다 (그러나 추가 행은 테이블의 앞쪽에 나타납니다). 작동 시키려면 아무 것도 바꿨습니까? – klogd
포스트는 그 바이올린 링크를 참조하십시오. – Saki
https://fiddle.sencha.com/#fiddle/6g1 5에서 정상적으로 작동하지만 4.2.0 및 4.2.1 모두 다르게 작동합니다. – klogd