背景:利用EasyUI数据网格datagrid进行数据展示及操作
需求:datagrid中某个列不能修改
EasyUI的HTML代码:
<table id="datagrid的id" class="easyui-datagrid" style="width:100%;height:100%"
pagination="true" singleSelect="true" rownumbers="true"
toolbar="#toolbar" data-options="
method:'get',
url:'XXXXXXX',
pagination:true,
rownumbers:true,
border:false,
fit:false,
onDblClickRow: onClickRow
">
<thead>
<tr>
<th data-options="field:'xuhao',checkbox:true" align="center">序号</th>
...等等
</tr>
</thead>
</table>
解决办法:在onDblClickRow中直接调用js方法onClickRow即可
JS代码:
function onClickRow(index){
if (endEditing()){
$('#datagrid的id').datagrid('selectRow', index).datagrid('beginEdit', index);
//设置可编辑行的指定列不可编辑
var dd = $('#datagrid').datagrid('getEditor', { index:index,field:'指定不可修改的列名称' });
$(dd.target).combobox('disable');
editIndex = index;
} else {
$('#datagrid的id').datagrid('selectRow', editIndex);
}
}
效果图(以第一列为例:双击后第一列置灰,不可修改):
新增时正常: