2010-08-15 2 views
0

MVC 2 프로젝트에서 subgrid가 활성화 된 Jqgrid가 있습니다. Subgrid는 버튼 클릭시 데이터를 확장하고 채 웁니다. 페이지로드시 하위 그래프 데이터를 확장하여 표시하고 싶습니다. 그래서 부모 그리드의 gridComplete 이벤트에서 exapandSubGridRow 메서드를 호출했습니다. 이제 문제는 subgrid 행이 pageload에서 펼쳐지지만 데이터가 없으면 부모 행의 아래에 빈 행이 나타납니다. 여기 내 코드입니다, 아무도 문제를 해결하는 데 나를 도울 수 있습니다. 사전에JqGrid- 페이지에서 Subgrid 확장하기

<script type="text/javascript"> 
    jQuery(document).ready(function() { 
     jQuery("#list").jqGrid({ 
      url: '/jqgrid/DynamicGridData/', 
      datatype: 'json', 
      mtype: 'GET', 
      colNames: ['SurveyQnGrpId', 'SurveyQnGroup1'], 
      colModel: [ 
       { name:'SurveyQnGrpId', index:'SurveyQnGrpId', width:40, align:'left' }, 
       { name:'SurveyQnGroup1',index: 'SurveyQnGroup1',width: 400, 
       align: 'left'}], 
      pager: jQuery('#pager'), 
      rowNum: 10, 
      rowList: [5, 10, 20, 50], 
      sortname: 'SurveyQnGrpId', 
      sortorder: "SurveyQnGroup1", 
      viewrecords: true, 
      caption: 'My first grid', 
      subGrid: true, 
      subGridUrl: '/jqgrid/InnerGridData/', 
      subGridModel: [{ 
       name: ['SurveyQnGrpId','SurveyQnId', 'SurveyQn', 'SurveyQnCategory', 
         'MandatoryQn','RadioOption3'], 
       width: [10,10, 100, 10, 10,10], 
       align: ['left', 'left', 'left', 'left'], 
       params: ['SurveyQnGrpId'] 
      }], 
      gridComplete: function() { 
       var rowIds = $("#list").getDataIDs(); 
       $.each(rowIds, function (index, rowId) { 
         $("#list").expandSubGridRow(rowId); 
       }); 
      } 
     }); 
    }); 
</script> 

감사합니다, 앙시

답변

1

이이 질문에 질문을 받았다 때 사용할 수 있다면 나도 몰라,하지만 난 subGridOptions 재산이 발견은 개체를합니다.

jQuery(document).ready(function() { 
    jQuery("#list").jqGrid({ 
     url: '/jqgrid/DynamicGridData/', 
     datatype: 'json', 
     mtype: 'GET', 
     colNames: ['SurveyQnGrpId', 'SurveyQnGroup1'], 
     colModel: [ 
      { name:'SurveyQnGrpId', index:'SurveyQnGrpId', width:40, align:'left' }, 
      { name:'SurveyQnGroup1',index: 'SurveyQnGroup1',width: 400, 
      align: 'left'}], 
     pager: jQuery('#pager'), 
     rowNum: 10, 
     rowList: [5, 10, 20, 50], 
     sortname: 'SurveyQnGrpId', 
     sortorder: "SurveyQnGroup1", 
     viewrecords: true, 
     caption: 'My first grid', 
     subGrid: true, 
     subGridOptions: { expandOnLoad: true }, 
     subGridUrl: '/jqgrid/InnerGridData/', 
     subGridModel: [{ 
      name: ['SurveyQnGrpId','SurveyQnId', 'SurveyQn', 'SurveyQnCategory', 
        'MandatoryQn','RadioOption3'], 
      width: [10,10, 100, 10, 10,10], 
      align: ['left', 'left', 'left', 'left'], 
      params: ['SurveyQnGrpId'] 
     }], 
     gridComplete: function() { 
      var rowIds = $("#list").getDataIDs(); 
      $.each(rowIds, function (index, rowId) { 
        $("#list").expandSubGridRow(rowId); 
      }); 
     } 
    }); 
}); 

참조 : http://www.trirand.com/jqgridwiki/doku.php?id=wiki:subgrid

+0

'expandOnLoad'이있는 것으로 보인다 객체의 속성 중 하나는 그리드가로드 될 때, true로 설정하면, 부모 그리드의 행을 확장 할 것이다, expandOnLoad입니다 'subGridModel'가 아닌'subGridOptions'의 속성 –

+0

죄송합니다! 좋은 캐치. 편집 됨. –