`
chengyu2099
  • 浏览: 468786 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

ExtJS组件 - store ②- renderer

EXT 
阅读更多
Ext.onReady(function()
{
	Ext.BLANK_IMAGE_URL = '../ext-2.2/resources/images/default/s.gif';
	
	 function renderSex(value) {
        if (value == 'male') {
            return "<span style='color:red;font-weight:bold;'>红男</span><img src='../images/user_male.png' />";
        } else {
            return "<span style='color:green;font-weight:bold;'>绿女</span><img src='../images/user_female.png' />";
        }
    }
    function renderDescn(value, cellmeta, record, rowIndex, columnIndex, store) {
        var str = "<input type='button' value='查看详细信息' onclick='alert(\"" +
            "这个单元格的值是:" + value + "\\n" +
            "这个单元格的配置是:{cellId:" + cellmeta.cellId + ",id:" + cellmeta.id + ",css:" + cellmeta.css + "}\\n" +
            "这个单元格对应行的record是:" + record + ",一行的数据都在里边\\n" +
            "这是第" + rowIndex + "行\\n" +
            "这是第" + columnIndex + "列\\n" +
            "这个表格对应的Ext.data.Store在这里:" + store + ",随便用吧。" +
            "\")'>";
        return str;
    }
    // PersonRecord
	var PersonRecord = new Ext.data.Record.create(
			[
			{name:'id',type:'int'},
            {name:'sex',type: 'string'},
            {name:'name'},
            {name:'descn'}]
	);    
	//	data
	var myData = [
		['1','male','name1','descn1'],
        ['2','female','name2','descn2'],
        ['3','male','name3','descn3'],
        ['4','female','name4','descn4'],
        ['5','male','name5','descn5']
	];
	//	sm
	var sm = new Ext.grid.CheckboxSelectionModel();
	//cm
	var cm = new Ext.grid.ColumnModel([
		new Ext.grid.RowNumberer(), // row number MODEL
		sm,
		{header:'编号',dataIndex:'id'},
        {header:'性别',dataIndex:'sex',renderer:renderSex},
        {header:'名称',dataIndex:'name'},
        {header:'描述',dataIndex:'descn',renderer:renderDescn}]
	);
	//	store
	var store = new Ext.data.Store({
		proxy: new Ext.data.MemoryProxy(myData),
		reader: new Ext.data.ArrayReader({},PersonRecord)
	});
	store.load();
	//	gridpanel
	var gridPanel = new Ext.grid.GridPanel({
		title:'Ext.grid.GridPanel',
		autoHeight:true,
		renderTo:'grid',
		store:store,
		cm:cm,
		sm:sm,
		stripeRows: true // 隔行换色
	});
//	store add record
	store.add(new PersonRecord({
		id:6,
		sex:'male',
		name:'name6',
		descn:'descn6'
	}));
//	onclick
	Ext.get('remove').on('click',function(){
		store.remove(store.getAt(1));
		gridPanel.view.refresh();
	});
});
分享到:
评论

相关推荐

    Extjs改变表格的颜色

    EXTJS的表格组件提供了丰富的自定义能力,允许开发人员根据需要调整数据的显示方式,包括颜色、字体、图标等。通过结合使用`renderer`函数和事件监听,我们可以创建出高度定制化的表格,以满足各种视觉和交互需求。...

    Extjs中文教程

    - 配置选项是Extjs组件的核心,用于设置组件的各种属性和行为。 - 通常在组件构造函数中通过传递一个配置对象来指定这些选项。 - **Ext.apply()和Ext.applyIf()** - `Ext.apply()`方法用于合并两个对象,第二个...

    Extjs4.2 Chart柱状图

    它提供了丰富的组件库,包括图表(Chart)功能,让开发者能够创建交互式的、数据驱动的可视化元素。在4.2版本中,ExtJS 的图表功能得到了进一步的增强,为用户提供了多种图表类型,其中柱状图(Bar Chart)是常用的...

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

    - `demo.html`:这是一个示例HTML文件,其中包含了ExtJS GridPanel的配置和初始化代码,可能包含了上述提到的renderer函数、store配置和ColumnModel设置。 - `rowspan.js`:这是JavaScript文件,包含了实现多行合并...

    EXTJS单元格变色、行变色

    其中,Grid Panel是EXTJS中最常用的组件之一,用于展示和编辑数据。本文将详细介绍EXTJS实现单元格变色、行变色的方法。 单元格变色 在EXTJS中,单元格变色可以通过renderer函数来实现。renderer函数是Grid Panel...

    extjs模拟excel表格

    ExtJS 提供了Store组件,可以绑定到各种数据源,如JSON、XML或Array。数据可以通过Ajax请求加载,也可以手动填充。 2. **列配置**:GridPanel的列可以通过配置项定义,包括列名、宽度、对齐方式、排序和过滤等。...

    extjs实现报表

    - **Store**:存储数据的关键组件,用于管理从服务器获取的数据,可以与Grid Panel配合使用。 2. **创建报表** - **定义模型(Model)**:为报表定义数据结构,包括字段名和类型。 - **创建Store**:配置数据源...

    extjs grid示例代码

    ExtJS Grid是Sencha ExtJS框架中的一个核心组件,它用于构建数据驱动的表格视图。Grid组件在Web应用中广泛使用,因为它提供了强大的数据展示、排序、分页、筛选和编辑功能。以下是对`ExtJS Grid`示例代码的详细解析...

    EXTJS Grid总结例子

    EXTJS Grid是一款强大的数据展示组件,广泛应用于Web应用开发中,尤其在数据密集型界面设计时,EXTJS Grid以其高效的数据加载、灵活的分页、排序、过滤和自定义功能而受到开发者青睐。本总结例子将深入探讨EXTJS ...

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

    renderer: function (value, metaData, record, rowIndex, colIndex, store) { return '('link') + '"&gt;' + value + '&lt;/a&gt;'; } }, // 其他列配置... ], ``` 在这个例子中,`renderer`函数接收了当前单元格的值...

    Extjs表格合并代码

    3. 利用ExtJS的`renderer`函数,根据数据动态调整单元格的样式。 4. 使用条件判断语句,针对不同的浏览器使用不同的CSS修复。 总结,实现ExtJS表格合并代码的关键在于理解表格组件的结构、配置和模板机制,并能妥善...

    Extjs+Gride使用方法

    ExtJS 是一个强大的JavaScript框架,主要用于构建富客户端的Web应用程序,而Grid是ExtJS中的一个核心组件,用于展示数据表格。在本篇文章中,我们将深入探讨如何使用ExtJS与Gride进行交互,创建功能丰富的数据网格。...

    extjs grid

    EXTJS Grid是EXTJS库中的一个核心组件,用于创建数据密集型的表格视图,它在Web应用程序中常用于展示和操作大量结构化数据。EXTJS Grid提供了丰富的功能,包括分页、排序、过滤、编辑等,使得用户可以高效地管理和...

    ExtJS_grid.rar_Grid javascript_extjs grid

    ExtJS Grid是一款强大的JavaScript组件,用于在Web应用中创建数据密集型的表格视图。它由Sencha公司开发,是Ext JS库的核心部分,广泛应用于企业级应用的前端开发,提供丰富的功能和高度的可定制性。这个"ExtJS_grid...

    Extjs4.2 根据不同的数值设置tabpanel行的背景颜色

    **TabPanel** 是ExtJS中的一个常用组件,可以用来组织多个面板或视图,每个面板可以通过选项卡的形式进行切换展示。在本例中,我们将重点介绍如何在TabPanel中的GridPanel(表格面板)中根据不同条件动态改变行的...

    extjs tree 学习资料

    ExtJS Tree 是一个功能强大的JavaScript组件,用于在Web应用程序中创建和展示层次结构的数据,它在ExtJS框架中扮演着重要角色。这个压缩包“extjs tree 学习资料”显然是为那些希望深入理解并掌握ExtJS Tree组件的...

    extjs editgrid combobox 回显

    在ExtJS中,`EditGrid`是一种特殊的网格组件,它允许用户直接在网格中进行编辑操作。而`ComboBox`则是一种下拉列表组件,用于提供一系列选项供用户选择。当这两种组件结合在一起时,可以实现用户在下拉列表中选择...

    extjs3多表头

    - `tgroupheaders`是另一个可以实现类似效果的组件,它提供了更简单的API,但可能没有那么灵活。 通过以上方法,你可以创建出具有多表头功能的ExtJS 3表格。这个特性使得数据的分类和呈现更加清晰,提升用户在浏览...

    extjs desktop相关 动态生成开始菜单 多级菜单的快捷方式

    这可能涉及到使用Store和Model来加载和管理数据,然后在视图层使用模板(Template)或渲染函数(Renderer)将数据转化为可交互的菜单项。 5. **快捷方式**:快捷方式通常是对某个功能或应用的快速访问入口。在ExtJS...

    ExtJS 使用grid显示数据

    在ExtJS中,Grid Panel是一种数据驱动的组件,它允许开发者以表格的形式展示大量数据,并且支持分页、排序、过滤、编辑等功能。要创建一个Grid,首先需要定义数据模型(Model),它描述了数据的结构,包括字段名和...

Global site tag (gtag.js) - Google Analytics