2011-04-08 12 views
2

내가, 내있는 jqGrid의 일부 동적 그룹화 작업에 게시 된 예를 당 해요 : http://www.trirand.com/blog/jqgrid/jqgrid.html (트리 탐색의 마지막 섹션을 참조하십시오. '그룹화 : 동적으로 변경 그룹화'있는 jqGrid 및 동적 그룹화

내가 할 수있는 그리드를 초기에 그룹핑 컬럼이있는 그룹화 IFF를 동적으로 변경한다. 그러나 원하는 그리드가 아니기 때문에 처음에는 그리드를 그룹 해제하고 사용자가 선택할 수 있도록 항목을 그룹화 할 수 있어야한다.

코드는 다음과 같다 :

function onGroupByChanged(){ 
    var vl = $('#lstGroupBy').val(); 
    if(vl) { 
     if(vl == "clear") { 
      $("#refData").jqGrid('groupingRemove',true); 
     } else { 
      $("#refData").jqGrid('groupingGroupBy', vl); 
      $("#refData").jqGrid('setGridParam', { grouping:true }); 
      $('#refData').trigger('reloadGrid'); 
     } 
    } 
} 

groupingGroupBy를 'vl'에 포함 된 열 이름으로 설정하면 FireBug에서이 오류가 발생합니다. jQuery에서 최소 null을 jQuery의 객체로 변환 할 수 없습니다.

groupingGroupBy를 호출하고 그룹화를 true로 설정하십시오.

누구나 아이디어가 있으십니까? 나는 붙어서 이것에 대해 이미 약 2 시간을 보냈다.

감사합니다, 랜달

답변

0

무시.

내 그리드의 초기 초기화에서 groupingView 매개 변수의 전체 옵션을 설정하는 동안 그룹핑을 설정하는 동안 : false가 트릭을 수행했습니다.

... 
    grouping: grouping, 
     groupingView : { 
      groupField : [groupColParam], 
      groupColumnShow : [true], 
      groupText : ['<b>{0}</b>'], 
      groupCollapse : true, 
      groupOrder: ['asc'], 
      groupSummary : [false] 
     }, 
... 
3
var GroupOption = new Object(); 
var groupField = []; 

groupField.push(vl); 

GroupOption.groupField = groupField; 
GroupOption.groupColumnShow = true; 
GroupOption.groupCollapse = false; 
GroupOption.groupText = ['<strong> {0} - {1} Item(s)</strong>'] 

$("#refData").setGridParam({groupingView : GroupOption}); 
$("#refData").setGridParam({grouping : true}); 
$("#refData").trigger('reloadGrid');