우리는 jgGrid를 사용하고 있으며 완벽하게 작동합니다. 그리드가 어떻게 설정되는지, 서버에서 json 데이터를 가져 오는 loadonce : true를 설명하겠습니다.서버에서 JqGrid 업데이트 데이터
이제 우리는 그리드를 20 초마다 업데이트 할, 그래서
setInterval(function() {
$("#jqGrid").setGridParam({ datatype: 'json', page: 1 }).trigger('reloadGrid', [{ current: true }]);
}, 20000);
것은이 잘 작동된다. 문제는 그리드가 완전히 새로 고침되어 변경된 데이터를 업데이트하려고하는 것입니다. 열의 한 셀에서만 변경이 있으면 해당 셀만 변경해야합니다.
그리드 전체를 새로 고치면 정렬 및 검색 필터에서 문제가 발생합니다. 그것은 20 초 후에 모든 것을 대체합니다. 사전
의견을 보내 주셔서 감사합니다. beforeProcessing 콜백을 구현하려고합니다. –
https://github.com/tonytomov/jqGrid/issues/789 @tonytomov는 이미 내 질문에 대답했지만 여전히 전 처리를하고 싶습니다. –
@JohnyBravo : 천만에요! 내 대답은 jqGrid를 다시로드하는 것이'setRowData'의 사용으로 훨씬 더 효과적 일 것이라고 썼습니다. 또한 귀하의 질문에 충분한 내용을 포함시키지 않았습니다. 예를 들어'rowNum : 5, loadonce : true'를 사용하면'setRowData'를 사용하여 데이터를 업데이트하려고 시도합니다. ** 현재 페이지의 데이터 **에서만 작동합니다. 다른 페이지에서 데이터가 변경되면'setRowData'가 작동하지 않습니다. 또한 다른 페이지의 데이터를 변경하고 다시로드하면'sortname'에 따라 행의 순서가 바뀔 수 있으며'setRowData'가있는 솔루션은 제대로 작동하지 않습니다. – Oleg