【问题标题】:Deselecting Ag-Grid select-all checkbox when the row data is refreshed via an outside button通过外部按钮刷新行数据时取消选择 Ag-Grid 全选复选框
【发布时间】:2017-05-23 04:22:24
【问题描述】:
【问题讨论】:
标签:
javascript
jquery
angularjs
ag-grid
【解决方案1】:
尝试将 id 或 ng-model 添加到复选框,并在使用 id 将新数据加载到网格后选中所有复选框 true,检查以下代码 ---
function selectAllRenderer(params) {
$scope.selectAll=true;
var cb = document.createElement('input');
cb.setAttribute('type', 'checkbox');
cb.setAttribute('id','selectAll');
cb.setAttribute('ng-model','selectAll');
cb.setAttribute('ng-click','selectAllCheckbox(selectAll)');
var eHeader = document.createElement('label');
eHeader.setAttribute("style","display:inline");
var eTitle = document.createTextNode(params.colDef.headerName);
eHeader.appendChild(cb);
eHeader.appendChild(eTitle);
cb.addEventListener('change', function () {
if ($(this)[0].checked) {
params.api.selectAll();
} else {
params.api.deselectAll();
}
});
return eHeader;
}
$scope.selectAllCheckbox = function(checked){
if(checked===true){
$scope.selectAll = false;
}else{
$scope.selectAll=true;
}
}
加载网格数据后尝试添加以下代码--
j$('#selectAll').checked=true;
或
使用 angularjs 有 ng-model 并在加载数据后设置为 true。