2010-06-21 2 views
0

격자의 객체 배열을 렌더링하는 slickgrid가있는 웹 페이지가 있습니다. 선택한 행이 변경 될 때 일부 동적 인 작업 (설정과 같은 마스터 세부 사항)을 수행하려고합니다. 그러나이 작업을 수행하려면 선택한 행의 데이터가 필요합니다. 나는 grid.getCurrentCellNode() 함수가 현재 노드의 dom 요소를 줄 것이라고 알고 있지만, 내가 찾고있는 것은 자바 스크립트 객체이다. 내가slickgrid에서 선택된 행을 나타내는 객체를 얻는 방법

data = [ 
     {id:1, name:'Khaja', dob:'26/07/1985'}, 
     {id:2, name:'Iqbal', dob:'26/07/1935'} 
     ...... 
     ... 
     ]; 

다음과 경우처럼 객체의 배열을 사용하는 경우 예를 들어, 내 선택 행이 동일한 ID를 가진 행이, 내가 방법을 통해 있는가 객체 {id:2, name:'Iqbal', dob:'26/07/1935'}를 가져 오지 수 있도록하려면 나는이 물건을 얻을 수 있습니까?

답변

3

onSelectedRowsChanged 이벤트 및 getSelectedRows 메소드를 사용할 수 있습니다.

+0

그 점을 지적 해 주셔서 감사합니다. slickgrid가 그리드 바인딩에 원래의 데이터 배열을 저장하지 않는다고 가정했지만, 그렇게 생각됩니다. 이제는 getSelectedRows를 사용하여 선택된 행 인덱스를 가져온 다음 원래 데이터 소스에서 해당 인덱스를 조회 할 수 있습니다. 감사. –

0
data[i]={ 
    ID: json[i].ID, 
    Name: json[i].Name, 
    Description: json[i].Description, 
    CreatedDate: myDate, 
    makesub: "---", 
    shared: json[i].IsShared 
    }; 
..... 

grid.onClick = function (e, row, cell) { 
      if (columns[cell].id == "colname"){ 
         // where colname is the column on which you want to trigger the click 
      alert("clicked:"+row+", albumID:"+data[row].ID); 
+0

답을 설명해 주시겠습니까? – Starx

+0

설명없이 downvoted ... –