在之前学习的表格属性中,我们知道,通过行高数值的改变,可以将表格的数据行显示模式设为单行或多行(具体请参考“多行模式”)。
要实现图片、文件或备注内容的字符型数据列在表格中的直接显示,首先必须在表格属性中将行高设置成一个大于0的值(比如95),然后再给相应的列设置列模板即可。例如,员工表中的“照片”列,在之前是通过绑定单图片管理器的列弹层方式进行显示的。如果要在表格中直接展示对应图片,可以这样处理:
首先双击列弹层绑定中的单图片管理器,将此绑定删除;然后到列模板里做如下设置:
{{- d.照片 ? '<img src="upload/atta/' + d.照片 + '" width=100% height=100%>' : ''}}
此模板的意思是,如果照片列内容不为空,就返回一串html代码。这段字符串代码使用的是img标签,也就是用来显示图片的。实际项目开发时,请务必注意图片文件所在的路径:
生成的页面效果如下:
当然,你也可以将多列内容进行组合,生成更具个性化的列数据展示内容。例如,尽管表格中没有用到“个人简介”列,但仍然可以通过列模板的方式,将它与其他列内容拼接在一起进行显示。以下是定义的模板示例:
{{- d.姓名 ?
'<div class="text-left"><span class="layui-font-red"
style="border-bottom:1px solid blue">' + d.姓名 +
'同志简介</span></div>' : '' }}
{{- d.照片 ?
'<img src="upload/atta/' + d.照片 + '" style="float:left;margin:13px 10px 0
0;height:66px">' : ''}}
{{- d.个人简介 ? '<span>' +
d.个人简介 + '</span>' : ''}}
在这个模板中,用到了3个列:姓名、照片和个人简介。其中,姓名和照片列都加上了样式,以便实现图文混排的展示效果:
当鼠标悬浮在单元格上面时,如果事先设定的行高仍然不能完整显示内容,仍然会出现垂直滚动条。如果不设置行高,则变为单行模式,这时仍将以弹层等方式显示完整内容: