2016-11-08 1 views
0

스크린 샷 :Handsontable, 데이터가있는 행을 삽입하는 방법은 무엇입니까?

enter image description here

두 퍼즐 :

하나 : 나는 데이터 행을 삽입합니다.

2 :이 데이터는 선택된 행의 데이터를 기반으로하며 AJAX 요청 응답으로 수정하려고합니다. 삽입하십시오.

는 나는이 방법을 발견

적절한 이벤트를 찾을 수없는, handsontable의 문서를 읽을 수 있지만 나는 그것이

var container = document.getElementById('table'); 
var hot = new Handsontable(container, { 
    data: gridata,//Table's data 
    rowHeaders: true, 
    stretchH: 'all', 
    fixedColumnsLeft: 2, 
    contextMenu: true 
}); 
var indexArr = hot.getSelected();//get selected row's index 
var selectedData = hot.getDataAtRow(indexArr[0]);//selected row's data 
//then insert it 

답변

1

당신은 내 예제와 같이 상황에 맞는 콜백을 사용하여 구현하는 방법을 모른다 JSFiddle :

contextMenu: { 
    callback: function(key, options) { 
    if (key == 'row_below') { 
     var indexArr = hot.getSelected(); 
     var selectedData = hot.getDataAtRow(indexArr[0]); 

     hot.populateFromArray(indexArr[2]+1, 0, [selectedData]); 
    } else if (key == 'row_above') { 
     var indexArr = hot.getSelected(); 
     var selectedData = hot.getDataAtRow(indexArr[0]); 

     hot.populateFromArray(indexArr[2]-1, 0, [selectedData]); 
    } 
    } 
} 
+0

정말 감사합니다. – nicegonice

관련 문제