首页 > 代码库 > [EASYUI] tooltip的扩展使用

[EASYUI] tooltip的扩展使用


在讲easyui中的tooltip功能之前,我首先要将的很重要是的只有在easyui1.3.3版本(包括1.3.3)后才有的,所以还在用1.3.3之前的版本并且正在努力寻找tooltip功能并且实现很绚丽的提示效果的小伙伴,我只想说三个字——“逗我呢”

  讲完使用范围,本来是要开始讲解一些用法,不过杰哥我就不再次多啰嗦了,官网上有,地址如下:千万表要点我哦

   废话不多说,首先就选要去创建一个添加tooltip的函数:

<span style="white-space:pre">	</span>//添加tooltip 
			function addTooltip(tooltipContentStr,tootipId){
				  //添加相应的tooltip   
				  $('#'+tootipId).tooltip({  
				     position: 'bottom',  
				     content: tooltipContentStr,  
				     onShow: function(){  
				     	$(this).tooltip('tip').css({
				     		backgroundColor: 'white',
				      		borderColor: '#97CBFF'  
						});
				     }     
				  }); 
			}

如果你需要将全部的列都用tooltip,那直接在上上面tootipId那处直接修改成datagrid的ID即可,更简单的网上方法好多。太没技术含量我就不多讲了。

      我将的是你需要那列出现tooltip,那列就出现。具体思路如下:

1)将需要出现tooltip的那列看作是一个操作列,则需要在初始化dataGrid的时候添加

    <th field="DCatRemark" formatter='remarkFormater' width="200" sortable="true" align="center">类型描述</th>

我以标签的形式写出,你也可以用js写,都一样的效果。

2)写完后接下俩就写该操作列对应的函数。

// 设置类型描述的信息
			function remarkFormater(value,row,index){
				 if(value&&value.length>15) {
					var DCatRemark=value.substring(0,15)+"...";
					return '<div id="DCatRemark-'+index+'" style="width:auto;">' + DCatRemark + '</div>';
				}else{
					return value;
				}
				
			}
3)接下来就是最重要的步骤了,一般直接执行这些代码无法显示出预定的tooltip效果。动态产生datagrid后,对tooltop未重新渲染,于是用$.parse重新绚烂,但还是得不到预期的效果,需要在datagrid的onLoadSuccess事件中产生tooltip,如下:

onLoadSuccess : function(data1) {
						for ( var i = 0; i < data1.rows.length; i++) {
							if (data1.rows[i].DCatRemark!= undefined) {
								
								var reason = data1.rows[i].DCatRemark;
							    toolReason = "<tr><td>类型描述:" + reason
										+ " </td></tr>";
							} 
							//拼写tooltip的内容 
							tooltipReason = "<table style='height:55px;width:165px;color:black'>"
									+ toolReason + "</table>";
							addTooltip(tooltipReason, 'DCatRemark-' + i);
							}}};

大概就是如此,需要源码的可以留下邮箱~不会的地方也可以留下问题,争取在线解决!!!


[EASYUI] tooltip的扩展使用