easyui datagrid checkbox根据条件设置禁止选择
$(#tb).datagrid({ url: url, queryParams: p, fit: true, border: false, striped: true, pagination: true, rownumbers: true, singleSelect: false, checkOnSelect: true, selectOnCheck: true, pageSize: 50, pageList: [50, 100, 150, 200], columns: cols, toolbar: #toolbar, onLoadSuccess: function (data) { var ds = data.rows; $.each(ds, function (i, v) { if (v.bkap == true) { $(#tb).datagrid(checkRow, i); $("input[type=checkbox]")[i + 2].disabled = true; } else { $(#tb).datagrid(uncheckRow, i); } }); }, onClickRow: function (index, row) { if (row.bkap == true) { $(#tb).datagrid(checkRow, index); return false; } }, onUncheckAll: function (rows) { $.each(rows, function (i, v) { if (v.bkap == true) { $(#tb).datagrid(checkRow, i); } }); } });
onLoadSuccess事件中,根据数据源中的条件设置复选框禁止,$(“input[type=‘checkbox’]”)[i + 2]中的2是因为视图中已经有一个复选框,列头还有一个复选框,所以从2开始。 onClickRow事件中,如果字段值符合条件,则始终调用checkRow方法,并return false;取消选择状态 onUncheckAll事件中,如果字段值符合条件,调用checkRow方法选中