`
hackbomb
  • 浏览: 215068 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

用ExtJs为表格单元格增加Tooltips浮动信息

    博客分类:
  • Ext
阅读更多

 ExtJs证实了其十分强大的界面定制能力,其中的提供的ToolTips功能比HTML里的如下语句定制性更强,完全可以代替如下功能
<a href="http://dfdfd" title="TIPS">Some Text</a>


ExtJs是通过Ext.ToolTip和Ext.QuickTips两个组件来实现浮动提示功能的,其中Ext.ToolTip的定制功能很强,具体效果可以参考,具体配置代码如下,
ToolTip配置代码
1    /**//*
2 * Ext JS Library 2.1
3 * Copyright(c) 2006-2008, Ext JS, LLC.
4 * licensing@extjs.com
5 *
6 * http://extjs.com/license
7 */
8
9Ext.onReady(function(){
10    new Ext.ToolTip({
11        target: 'tip1',
12        html: 'A very simple tooltip'
13    });
14
15    new Ext.ToolTip({
16        target: 'ajax-tip',
17        width: 200,
18        autoLoad: {url: 'ajax-tip.html'},
19        dismissDelay: 15000
// auto hide after 15 seconds
20    });
21
22    new Ext.ToolTip({
23        target: 'tip2',
24        html: 'Click the X to close me',
25        title: 'My Tip Title',
26        autoHide: false,
27        closable: true,
28        draggable:true
29    });
30
31    new Ext.ToolTip({
32        target: 'track-tip',
33        title: 'Mouse Track',
34        width:200,
35        html: 'This tip will follow the mouse while it is over the element',
36        trackMouse:true
37    });
38
39
40    Ext.QuickTips.init();
41
42});


但是Ext.ToolTip的缺点也是很明显的,他需要在配置中写入提示内容文本,这样如果想在表格中引用,给表格中的某一列增加浮动提示这种情况就很不方便,代码也会十分混乱。(当然有高手是可以通过函数解决这个问题的,请高手指点)。ExtJs2.0 增加了一个扩展组件就是Ext.QuickTips实际上正好解决这个问题,支持在超文本中定义浮动提示的内容,这样用ASP.NET的数据绑定组件引用起来十分方便,界面也比HTML中的那个缺省的样式好看,唯一的缺点是QuickTips的定制没有ToolTip那么灵活,像上面展示的支持拖拽,鼠标点击关闭,AJAX都不好实现,但总比没有强。下面我就说说,这个QuickTips怎么具体配置,


首先在header里增加ExtJS的引用

<link rel="stylesheet" type="text/css" href="ext-2.1/resources/css/ext-all.css" />
<script type="text/javascript" src="ext-2.1/ext-base.js"></script>
<script type="text/javascript" src="ext-2.1/ext-all.js"></script>

然后再在header里对Ext.QuickTips配置
Ext.QuickTips.init(); 是必须的

Ext.apply(Ext.QuickTips.getQuickTip(),{...}); 是可选的,如果你想使用缺省配置,就完全可以省略掉这一段。

maxWidth 最大宽度
minWidth 最小宽度
showDelay 延时显示(毫秒)
trackMouse 随着鼠标移动
hideDelay 延时自动隐藏 (缺省为true)
closable 显示关闭图标(但是这个图标显然只是一个样子,鼠标点击不到它!)
autoHide 自动隐藏 (这个配置没用处,不管是真是假,都自动隐藏,实际需要用下面的dismissDelay来控制)
draggable 支持用鼠标拖动(实际上这个选项也不起作用,因为鼠标根本移动不到这里!)
dismissDelay 这个才是最有用的选项,否则你完全可以省掉这段Ext.apply的配置。因为缺省情况下这个浮动提示是经过一段时间以后就自动隐藏。只有通过设置这个值为0来关闭自动隐藏浮动提示!


<script type="text/javascript">
Ext.QuickTips.init();
Ext.apply(Ext.QuickTips.getQuickTip(),{
//maxWidth: 200,
//minWidth: 100,
//showDelay: 50,
//trackMouse: true,
//hideDelay: true, 
//closable: true,
//autoHide: false,
//draggable: true,
dismissDelay: 0
});
</script>

最后在body里增加对Ext.QuickTips的引用,qtitile可以视情况而定可以省掉而仅仅保留qtip,在qtip里增加绑定内容。

<input type="button" value="OK"
class="tip-target" ext:qtitle="OK Button" ext:qtip="This is a quick tip from markup!">
</input>

<asp: ListView  >

<ItemTemplate>
<div id="sample"
ext:qtitle='<%# Eval("TipsTitleField") %>' ext:qtip='<%# Eval("TipsField") %>'>
   <%# Eval("SampleField") %>
</div>
</ItemTemplate>
</asp: ListView>

分享到:
评论
1 楼 henchong 2013-01-22  
如果提示信息全是数字的话,是不会自动换行的,不知道这个该怎么解决

相关推荐

    100行代码解决ExtJs4.1合并单元格问题

    100行代码解决ExtJs4.1合并单元格问题

    extjs合并单元格

    标题中的“extjs合并单元格”指的是在使用Ext JS这个JavaScript框架时,如何实现表格(Grid)中的单元格合并功能。Ext JS是一个用于构建富客户端Web应用的前端框架,提供了丰富的组件库,其中包括数据网格(Data ...

    EXTJS单元格变色、行变色

    EXTJS单元格变色、行变色实现方法详解 EXTJS是一个功能强大且流行的JavaScript框架,用于构建复杂的Web应用程序。其中,Grid Panel是EXTJS中最常用的组件之一,用于展示和编辑数据。本文将详细介绍EXTJS实现单元格...

    extjs单元格无法复制

    但是,在使用 ExtJS 的 GridPanel 组件时,可能会遇到单元格无法选中复制的问题,特别是在 IE 浏览器中。今天,我们将讨论如何解决这个问题。 ExtJS GridPanel 单元格无法选中复制的问题产生的原因是由于每个单元格...

    Extjs表格合并代码

    在本文中,我们将深入探讨如何在ExtJS框架中实现表格单元格的合并,以及解决不同浏览器间盒模型差异带来的布局问题。ExtJS是一款强大的JavaScript库,用于构建富客户端应用程序,其表格组件是功能丰富的数据展示工具...

    Extjs 实现多行合并(rowspan)效果

    在ExtJS中实现多行合并(rowspan)的效果,通常是为了在数据表格中展示具有层次结构的数据,或者在某些特定情况下需要对表格行进行合并,以优化数据的展示。这通常涉及到对表格(GridPanel)的配置和自定义。下面...

    extjs显示表格信息

    用extjs技术显示表格的信息,不过首先要导入extjs所需的库文件

    ExtJs表格点击超链接获取行的值

    为了实现这一功能,我们可以使用`renderer`函数对单元格进行自定义渲染。 **代码示例**: ```javascript columns: [ { header: 'Name', dataIndex: 'name', renderer: function (value, metaData, record, ...

    extjs 动态表格完整版

    5. **表格编辑**:ExtJS提供两种编辑模式,行编辑和单元格编辑。`Ext.grid.plugin.RowEditing`和`Ext.grid.plugin.CellEditing`插件可以轻松启用这些功能。 6. **排序和过滤**:通过设置`sortable`属性,用户可以...

    extjs单元格合并

    EXTJS单元格合并 EXTJS单元格合并是指在EXTJS GridPanel中实现单元格合并的功能。单元格合并可以使得GridPanel中的数据显示更加简洁和清晰。下面将详细介绍EXTJS单元格合并的实现方法。 一、加入CSS样式 在实现...

    extjs 简单表格

    "extjs 简单表格"这个主题,我们将探讨如何在ExtJS中创建和使用基本的表格。 首先,我们需要理解ExtJS表格的基本结构。表格由多个部分组成,包括Store(数据存储)、Model(数据模型)、Column Model(列模型)和...

    ExtJs Filter 表格过滤

    在ExtJs中,"Filter"功能是用来处理数据网格(Grid)中的数据过滤,它允许用户根据特定条件快速筛选和查找所需信息。表格过滤是提高用户体验和数据管理效率的重要工具,尤其在处理大量数据时。 在"ExtJs Filter ...

    ExtJS GRID单元格合并

    在ExtJS 4.0版本中,Grid提供了单元格合并的功能,这在处理复杂数据展示时非常有用,比如汇总信息或者创建表头合并。下面我们将深入探讨如何在ExtJS 4.0 Grid中实现单元格合并,以及其背后的技术细节。 首先,理解...

    ExtJs动态grid的生成

    在IT领域,ExtJS是一个广泛使用的JavaScript库,用于构建富客户端Web应用程序,特别是那些需要复杂用户界面的应用。本文将深入探讨如何在ExtJS中动态生成Grid,这是一个非常实用的功能,可以适应不断变化的数据需求...

    EXTjs4.0以下合并表格

    在EXTjs 4.0以下的版本中,开发人员可能会遇到合并表格单元格的需求,这在展示复杂数据或者组织信息时非常有用。EXTjs提供了强大的表格网格组件(GridPanel),允许自定义布局和样式,包括单元格的合并。 在EXTjs中...

    Ext grid合并单元格

    根据提供的文件信息,我们可以深入探讨如何在 Ext JS 中实现 Grid 的单元格合并功能。此案例主要涉及到了自定义 GridView 的 `renderHeaders` 方法来达到单元格合并的目的,并且还涉及了模板(Template)的使用、...

    Extjs 合并单元格

    标题中的“Extjs 合并单元格”指的是在Ext JS框架下实现表格(Grid)中单元格的合并功能。Ext JS是一个强大的JavaScript库,专用于构建富客户端Web应用,其核心组件之一就是数据网格(Data Grid),用于展示大量结构...

    一个extjs表格的实例

    extjsDemo2 form panel 一个extjs的demo。1、描绘了表格的属性;2、一个简单的页面布局。供参考。

    extjs动态表格例子

    extjs动态表格例子

Global site tag (gtag.js) - Google Analytics