2017-09-18 5 views
1

모든 필터 :Slickgrid 스프레드 시트 플러그인 분명 나는이 필터링 플러그인과 slickgrid이

https://github.com/danny-sg/slickgrid-spreadsheet-plugins/blob/master/ext.headerfilter.js

이 각 열에 대한 명확한 방법 :

 $('<button>Clear</button>') 
      .appendTo($menu) 
      .bind('click', function (ec) { 
       //alert(JSON.stringify(columnDef)); 
       // console.log($menuButton.data("column")); 
       // alert($menuButton.data("column").id); 
       columnDef.filterValues.length = 0; 
       setButtonImage($menuButton, false); 
       handleApply(ec, columnDef); 
      }); 

내가의 버튼을 만들고 싶어 모든 필터를 지우고 버튼 이미지를 재설정하는 페이지 나는 지금까지이있어하지만 붙어 :

$("#clearallfilters, #clearallfilters-sm").click(function() { 
    for (var filcolumn in grid.getColumns()) { 
    filcolumn.filterValues.length = 0; 
    //then change all pictures 
    } 
}) 

내가 그렇게하는 방법을 알고있는 filterValues ​​밖으로 열을 반복하고 0에 필요하지만 내 인생하지 않는 가정합니다.

답변

2

내가 이런 식으로 그것을 당신은 filervalues이

var clearcolumns = grid.getColumns(); 
for (var i = 0; i < clearcolumns.length; i++) { 
if (clearcolumns[i].filterValues !== undefined) { 
    delete clearcolumns[i].filterValues; 
} 
} 
grid.setColumns(clearcolumns); 
dataView.refresh(); 
grid.render();enter code here 
+0

매우 깔끔한 감사 마이클 저장됩니다 그게 전부 때문에 열을 다시 설정해야합니다. 필터 아이콘을 기본 화살표로 다시 변경합니다. – matt9292