2017-02-13 9 views
2

ColdFusion 9에서 ColdFusion 2016으로 업그레이드했으며 사용하던 일부 코드는 더 이상 작동하지 않습니다. ColdFusion 2016에서 Ext/JS 4.1을 사용하고있는 것처럼 보입니다.이 버전을 사용하여이 정보를 검색하는 방법을 모르겠습니다.Ext/JS 4.1을 사용하여 그리드의 정렬 열과 방향을 검색하는 방법

현재 코드는 다음과 같습니다

var mygrid = ColdFusion.Grid.getGridObject('rosterGrid'); 
var params = mygrid.getStore().lastOptions.params; 
var sort = params.sort; 
var dir = params.dir; 

나는 4.1 lastOptions.params에 대해 동등한를 찾을 수 없습니다. 그리드의 정렬 열과 방향을 가져와야합니다.

+0

Sencha 4.1 문서를 살펴 봐야합니다. lastOptions 및 params 객체는 더 이상 존재하지 않습니다. 추가 데이터를 보내고 사용하려면 이제 proxy의 extraParams 객체를 사용할 수 있습니다. 기억 하듯이 store.getProxy()를 사용해야합니다. extraParams –

+0

이것을 사용해야합니다. 'sortableColumns : Boolean'입니다. http://docs.sencha.com/extjs/4.0.7/#!/api/Ext.grid.Panel을 확인하십시오. – UDID

답변

3

이 시도 :

var sorter = mygrid.getStore().sorters.getAt(0); var sort = sorter.property; var dir = sorter.direction;

+0

정렬기를 반환하는 것은 정의되지 않습니다. Ext/JS 문서를 살펴보면 분류 자 ​​아래에서 속성이나 방향을 보지 못합니다. –

+0

Documentation - http://docs.sencha.com/extjs/4.1.1/#!/api/Ext.util.Sorter. 현재 저장소에 적용된 정렬이 없으면 분류기는 정의되지 않습니다. 이 경우 다음을 수행하십시오. var sort = sort? sorter.property : ''; 이 피들을 사용해보세요. 그것은 작동합니다 - http://jsfiddle.net/vdazU/3237/ – inQstvJS

+0

정렬이 원래 주어지지 않았다면 당신은 정확하지 않았습니다. 종료 코드는 다음과 같습니다. \t \t \t \t var sorter = mygrid.getStore(). sorter.getAt (0); \t if (typeof sort! = 'undefined') { \t \t \t var sort = sorter.property; \t \t \t var dir = sorter.direction; \t \t} else { \t \t var sort = 'startDate'; \t \t var dir = 'ASC'; \t \t \t \t \t} –

1

inQstvJS` answer의 도움으로, 여기 내 마지막 코드가 어떻게 생겼는지입니다.

var sorter = mygrid.getStore().sorters.getAt(0); 
if (typeof sorter != 'undefined') { 
    var sort = sorter.property; 
    var dir = sorter.direction; 
} else { 
    var sort = 'startDate'; 
    var dir = 'ASC'; 
}