如何让easyui的datagrid添加链接图标

如何让easyui的datagrid添加链接图标,第1张

第一步,我需要 在datagrid行里添加一列,field指向id(field:'id'),然后对这列进行格式化处理(formater:格式化函数),如下:

<th data-options="field:'id',width:180,formatter: rowformater"> *** 作</th>

复制代码

第二步:

根据documentation的描述,formatter的格式化函数有3个parameters,分别是:

value: the field value,也就是field:'id'。

rowData: the row record data。就是这一行的Json数据,包括你已经选择在Datagrid上显示的内容,和没显示的内容。因为我的Json数据里包括了Id这一内容,所以我可以直接调用。如果你作为数据源的Json里没有Id属性,需要修改一下Json的输出。我的每行Json输出是类似{"id":"1","name":"\u7ecf\u6d4e\u53d1\u5c55","parentId":"0"}的结构

rowIndex: the row index.当前行的Index。

所以我写rowformater这个函数的时候,也需要用function rowformater(value,row,index)的方法。为了看起来清晰明白,我只在函数里写了一句话(放在<head>标签里),事实上项目上需要做一些基本的判断。:

<script type="text/javascript">

function rowformater(value,row,index)

{

return "<a href='"+row.id+"' target='_blank'> *** 作</a>"

}

</script>

复制代码

OK,应该能跑起来了。跑出的结果就是上面的截图样式。

注意:自己做了以后发现,如果UI中一行的多个列需要用到数据源中的同一列,那么可能会有问题,需要把这UI中的多个列并到同一列中,共同使用数据源中的这同一列。

自定义图标很简单,你可以打开easyui中的icon.css这个文件看看他的图标类是如何定义的就明白了,自己准备一个16×16的png小图标,然后在icon.css里面增加你自己定义的图标类就可以了。

需要使用EasyUI控件库提供的ImageList组件来管理图片,再将ImageList绑定到ListView中。下面是一个简单的步骤:

1、在EasyUI控件库中创建一个ImageList组件,然后向其中添加您要显示的图片。

2、在大图标列表框(ListView)中设置LargeImageList属性,将ImageList组件与ListView进行绑定。

3、使用ListView的Items属性,添加每个项到列表框中,并将每个项的ImageIndex属性设置为ImageList中相应图像的索引。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11493410.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存