EXT-Grid

Ext - Grid Grid是Ext框架中一个重要的组成部分。一般建立Grid主要实现数据的增删改查。 建立一个Grid Grid一般有三个主要的内容,ds,cm,GridPanel var ds = new Ext.data.Store(); var cm = new Ext.grid.ColumnModel(); var grid = new Ext.grid.GridPanel(); 如果要页面载入时,Grid不显示,事件触发查询并建立Grid显示。 很简单,将GridPanel建立在事件的function中就可以了。 如果载入时就显示Grid,这里分几种情况: (1)页面载入时,Grid显示,并查询和显示出数据。 (2)页面载入时,Grid显示,但不发送请求数据,事件触发查询。该查询条件已固定或不需要条件。 (3)页面载入时,Grid显示,不查询数据,事件触发查询,该查询需要从页面上存在的文本框中获得数据作为条件。 (4)与(3)相同,但是希望在Grid查询过程中有loadMask效果。 对于1)直接在Ext.onReady()中建立GridPanel,并且ds调用load方法。 对于2)在Ext.onReady()中建立GridPanel,而在事件的function中写ds.load() 对于3) 在Ext.onReady()中建立GridPanel,而此时的ds为一个假ds,它的作用仅仅是为了能够在页面载入时就显示Grid,而在事件的function中,则再建立一个带有查询条件的ds,然后用该ds重新配置Grid.grid.reconfigure(ds,cm); 对于4) 查询的要求可由grid被新的ds重新配置的方法实现,但是会发现,这样做时,Grid的loadMask效果也不会出现了。有一个方法,就是在事件的 function中,将Grid的render的div清空,即div.innerHTML="" 之后再重新建立一个Grid。这样做的缺点就是会在有很多代码重复。 可能还会出现一些其他的function的调用以及无法取得某对象的问题。 以下由第三种情况为例,来说明增删改查。 建立: var fds = new Ext.data.Store(); var cm = new Ext.grid.ColumnModel([ {header:'例子',width:100,dataIndex:'test', editor:new Ext.form.TextField({ id:'test' }) } ]); var sm = new Ext.grid.RowSelectionModel(); var grid = new Ext.grid.EditorGridPanel({ ds:fds, cm:cm, sm:sm, width:200, height:200, title:'举例', renderTo:Ext.get("testdiv") }); 这里建立EditorGridPanel,是可以进行编辑的Grid. 1 查询:(点击按钮触发事件) function btnclick() { var Record = Ext.data.Record.create([ {name:'test'} ]); //此处将record单独提出方便操作 var ds = new Ext.data.Store({ url:'访问的地址', reader:new Ext.data.XmlReader({ record:'item' },Record) }); ds.load(); grid.reconfigure(ds,cm); } 2 添加 新建一条数据 var r = new Record({ test:'随便举个例子' }); 插入到表格指定行,n为要插到这行后(此处取了表格的行数,即插入到最后),m是编辑完毕后focus的位置列数 var n = grid.getStore().getCount(); grid.stopEditing(); grid.getStore().insert(n,r); grid.startEditing(n,m); 3 删除 删除选定的行 var r = grid.getSelectionModel().getSelected(); ds.remove(r); 删除多行,也一样,用getSelections()反法取到选中的行的一个数组,然后再一一删除。 删除所有行 ds.removeAll(); 4 修改 两种方法,一种直接手动点击需要修改的单元格,EditorGridPanell中的ClicksToEdit来设置点击几下进入编辑状态。 还有一种从别处获得数据自动修改。 假设一条新的数据, var nr = ['修改后的例子']; 选定你要修改的行 var recordtoedit = grid.getSelectionModel().getSelected(); 或者var recordtoedit = ds.getAt(rowIndex); recordtoedit.set('test','修改后的例子'); 还可以在修改完毕后将修改过的行的颜色改变来标示出哪一条是修改过的。 添加事件 grid.on('afteredit',function(e){ var rowIndex = e.row; grid.getView().getRow(rowIndex).style.backgroundColor="red"; //可以增加透明度效果 grid.getView().getRow(number).style.filter = "alpha(opacity=50)"; grid.getView().getRow(number).style.MozOpacity =".5"; });
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
### 回答1: ext-7.0.0.156.zip是一个文件的名称。这个文件可能是某个软件的压缩包,也可能是一个库文件或者其他类型的文件。这取决于文件的作者和用途,我们需要进一步了解具体的情况。 如果这个文件是某个软件的压缩包,那么它可能包含了软件的安装文件、配置文件、帮助文档等。用户可以下载这个压缩包,解压后按照提示进行安装,即可使用这个软件。 如果这个文件是一个库文件,它可能包含了某种编程语言的函数、类、方法等。开发者们可以将这个库文件导入到他们的工程中,利用其中的函数和类来实现某些功能。 总之,ext-7.0.0.156.zip是一个文件名,它代表着某个具体的文件。我们需要根据实际情况进一步了解它的用途和作用。 ### 回答2: ext-7.0.0.156.zip 是一个软件包的名称,它与 Sencha Ext JS 相关。Sencha Ext JS 是一款用于创建富交互式 Web 应用程序的 JavaScript 框架和工具集。它提供了许多先进的组件和工具,使开发者能够轻松构建具有复杂功能和美观外观的 Web 应用程序。 ext-7.0.0.156.zip 是 Sencha Ext JS 7 版本的一个软件包,其中包含了一些关键的文件和目录。开发人员可以下载这个软件包,并将其集成到他们的项目中。这个软件包具有以下功能: 1. 提供了一些常用的 UI 组件,例如按钮、表格、面板和表单等。 2. 包含了一些强大的工具,例如 Grid 和 Chart 工具,可以帮助开发者轻松创建复杂的数据可视化界面。 3. 支持多种数据源和数据格式,例如 JSON、XML、CSV 和 Excel 等。 4. 提供了一些强大的布局工具,例如布局器和容器,可以帮助开发者轻松管理和组织界面元素。 5. 构建 Web 应用程序时提供了一些重要的前端工具和框架,例如 MVC 和 MVVM 模式、路由和数据绑定等。 总之,ext-7.0.0.156.zip 是 Sencha Ext JS 7 的一个重要部分,它提供了许多重要的组件、工具和框架,可以帮助开发者创建出美观、功能强大的 Web 应用程序。 ### 回答3: ext-7.0.0.156.zip是一个文件名,可能是一个软件包或工具集的版本号。 "EXT"通常指的是Ext JS,它是一个JavaScript框架,用于开发Web应用程序的工具集,提供了丰富的UI组件、数据引擎、AJAX通信等功能。该版本号“7.0.0.156”可能是Ext JS的一个版本号,表示该版本是第7个大版本的第0个小版本的第0个补丁号,用于修复先前版本的错误或添加新功能。zip表明文件被压缩成了ZIP格式,以便在下载和传输过程中更加方便。总的来说,ext-7.0.0.156.zip可能是一个用于Web开发的JavaScript工具集应用程序的版本号和压缩文件的名称。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值