2013-05-14 3 views
0

dojo 데이터 그리드에서 행 번호를 검색하려고합니다. rowIndex 함수는 정렬 할 때 '행 번호'가 아니라 '행 번호'가 필요하기 때문에 많은 도움이되지 않습니다.Dojo Datagrid - 행 번호 얻기

시나리오 :

내가 하나의 특정 행에 포커스를 설정하고 싶습니다이 초점도 정렬 후 남아 있어야한다. 그러나 아래 코드를 사용하면 올바른 행을 선택하지 않습니다.

예를 들어 색인 1은 정렬 후 5 행에 있습니다. 그러나, e.item.id은 여전히 ​​

calendar.on("itemClick", function (e) 
{ 
    var identity = MyGrid._by_idx[e.item.id].idty; 

    var gridItem = MyGrid.getItem(identity); 
    var gridItemIndex = MyGrid.getItemIndex(gridItem); 

    MyGrid.doclick({ rowIndex: gridItemIndex }); 
    MyGrid.scrollToRow(e.item.id); 
}); 

당신이 날 올바른 활용하는 방법을 알려 주시기 바랍니다 수 ... 예상 한대로 남아 또한, 나는 또한 시도 5.

calendar.on("itemClick", function (e) 
{ 
    MyGrid.doclick({ rowIndex: e.item.id }); 
    MyGrid.scrollToRow(e.item.id); 
}); 

입니다 파업 후 행? 시간 내 주셔서 감사합니다.

소원, 산토 좋아

+0

난 당신이 calender.on를 사용하는 동안 당신은 종류에 뜻을 이해 할 수 없습니다 죄송합니다. 캘린더 필터를 기반으로 그리드에서 행을 선택하려고합니까? – user1445117

+0

안녕하십니까, 답변 해 주셔서 감사합니다. 나는 gridItem과 calendarItem을 둘 다 가지고있다. 연결된 calendarItem을 클릭 할 때 올바른 gridItem을 선택하려고합니다. 둘 다 이드와 함께 언급됩니다. 따라서, 일정 항목 클릭시, 연관된 행 엔티티를 선택하고 싶습니다. –

+0

나는 그리드 아이템과 칼렌더 아이템 인덱스 항목이 같은 방식으로 존재하는지 확실하지 않다면, gridItem에 CalnderItem과 같은 스토어가 있다고 추측하고있다. 코드를 더 자세히 설명하거나 JSfiddle에 예제를 추가 할 수 있습니까? – user1445117

답변

0

, 나는 대답을 알아 냈어.

GetGridItemIndexByGridItem = function (gridItem) { 
    var indexLength = MyGrid._by_idx.length; 
    var element = null; 
    var gridItemIndex = -1; 

    for (var i = 0; i < indexLength; i++) { 
     element = MyGrid._by_idx[i]; 
     if (element.item.Guid == gridItem.Guid) { 
      gridItemIndex = i; 
     } 
    } 
    return gridItemIndex; 
} 

최고의 소원