728x90
    
    
    
  jQgrid를 사용할 때 화면이 변경되면 그리드의 영역도 갱신을 해야 됩니다.
그래서 보통 $(window).bind(‘resize’, function() {~~~~}).trigger(‘resize’); 방식을 많이 쓰게 됩니다.
여기서 문제점은 명확한 갱신 시점이 없기 때문에 약간의 텀을 둬서 그리드 갱신을 할 필요가 있습니다.
검색을 하는 중 멋진 방법이 있어서 같이 공유하고자 합니다.
var resizeTimer;
 
var resizeGrid = function() {
  if (grid = $('.ui-jqgrid-btable:visible')) {
    grid.each(function(index) {
      gridId = $(this).attr('id');
      gridParentWidth = $('#gbox_' + gridId).parent().width();
      $('#' + gridId).setGridWidth(gridParentWidth, true);
    });
  }
};
 
(function($, window, document, undefined) {
  $(window).bind('resize', function() {
    clearTimeout(resizeTimer);
    resizeTimer = setTimeout(resizeGrid, 100);
  }).trigger('resize');
});
반응형
    
    
    
  'Language' 카테고리의 다른 글
| [React JS] React JS 시작하기 (0) | 2017.03.28 | 
|---|---|
| [JavaScript] Chrome(또는 IE)에서 뒤로가기 버튼 방지하기 (3) | 2017.03.26 | 
| [JavaScript] jQuery-UI의 Dialog에 Button Class 지정 (0) | 2017.03.26 | 
| [WebSocket] Spring 4를 이용한 WebSocket 구현하기 (5) | 2015.01.02 | 
| [XStream] XML 파싱할 때 언더바(_)가 2개 생기는 문제점 해결방법 (0) | 2015.01.02 |