jquery easyui tooltip

这些天 在使用jquery easyui 的时候遇到过这样的问题: 就是想当鼠标移动到datagrid的单元格上的时候,提示出现的信息。在网上找了很多资料,大多数都是说写一个扩展方法或者是修改easyui的默认mouseover的方法,但是感觉都太麻烦,并且如果版本更新的话,可能会造成影响。经过一下午的考虑,决定用tooltip和formatter 来解决此类问题:

首先考虑的方向就是如果可以用formatter 格式化列的属性重新写一个<a></a>,然后等到datagrid提交成功的时候,在success里使用tooltip来显示就可以了,所以首先要在对应的列里加一个(我把datagrid写在页面上了)formatter:remarkFormater,然后在对应的js里写一个函数:

           

function remarkFormater(value,row,index){
var content = ''; 
var abValue = value; //鼠标移到的对应列的value值
content = '<a href="#" title="' + row.createtime + '" class="relevance">' + abValue + '</a>'; //格式化一个<a>标签,重新给单元格附上一个新的格式
return content;
}

 row.createtime :就是准备显示的提示信息的内容,当然createtime 就是datagrid的某一列,我把这列隐藏了,加一个hidden:true 在对应的列的属性里就可以了

这样还不够,还要在datagrid提交成功后 success: function(){

}里加上 $(".relevance").tooltip();  然后你就可以使用toolTip的属性和方法进行修饰弹出框的信息样式等。之所以没在class里直接写成class="easyui-tooltip",因为这样写会在datagrid 加载成功后 自动去除class,所以要重新定义下。

我用我的方法已经实现了功能,水平有限 和大家分享下,对不对自己试试吧。希望对和我一样水平的小伙伴有所帮助吧

posted @ 2015-11-26 22:07  伤心小馒头  阅读(1472)  评论(0编辑  收藏  举报