easyui中,datagrid行编辑时为什么行高会变
时间: 2024-03-27 21:39:15 浏览: 181
easyui datagrid在编辑状态下更新列的值
datagrid行编辑时行高变化的原因可能是因为编辑器的高度比原始单元格的高度更高,导致整个行的高度增加。为了解决这个问题,可以通过以下两种方法之一来解决:
1. 在datagrid的初始化中设置rowStyler属性,将其设置为一个返回样式信息的函数,该函数可以根据行的编辑状态来设置行的高度。例如:
```
$('#dg').datagrid({
rowStyler: function(index,row){
if (row.editing){
return 'height:60px;';
} else {
return '';
}
}
});
```
2. 在编辑器的初始化中,将其高度设置为与单元格高度相同。例如:
```
$('#dg').datagrid({
onBeforeEdit: function(index,row){
var editors = $(this).datagrid('getEditors', index);
for(var i=0; i<editors.length; i++){
var field = editors[i].field;
var ed = $(editors[i].target);
if (ed.hasClass('textbox-f')){
ed.textbox('resize', ed.parent().height());
}
}
}
});
```
其中,“textbox-f”是textbox编辑器的类名,如果使用其他编辑器,需要将其替换为相应的类名。
阅读全文