在使用easy ui datagrid 列表的时候有时候会因为列数据过长导致数据在列内展示不全,
在使用中本人对此进行了一个格式化的操作具体如下:
{field:'enterprise.name',title:'企业名称',width:200,formatter:function(value, row, index) {
var va=eval("row." + $(this).attr("field"));
return formatBr(2,va);
},sortable:true},
/**
*len我是每行的长度
*value我是谁?
*/
function formatBr(len,value){
var slengh=value.length;
var restr="";
var flag=true;
for (var i=1;i<=100;i++){
len2=i*len;
if(slengh>=len2){
flag=false;
restr+=value.substring(len2-len,len2)+"</br>"
}else{
break;
}
}
if(flag){
restr+=value;
}else{
if(len2-len<=value.length-1){
restr+=value.substring(len2-len, value.length)
}
}
return restr;
}
说明:len 是本列显示多少字,后续会换行展示 ,value是展示的数据
效果如下