Ext 动态数据源生成.doc_第1页
Ext 动态数据源生成.doc_第2页
Ext 动态数据源生成.doc_第3页
Ext 动态数据源生成.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

var GenerGrid = data: null, url_data: null,/Grid数据源 url_column: null,/列数据源 _width: null,/宽度 _height: null,/高度 _pagesize: null,/每页显示数据数 romanceContainer: null,/渲染Grid的容器 /hiddenColumnCount: null, /隐藏的列数,默认无隐藏列 enableChecked: false,/是否有CheckBox,默认为无。 grid: null, ToHrefField: null,/链接列 ToHrefUrl: null,/链接地址 ToHref: function(value) return + value + ; , GenerData: function() /动态添加列,这是关键代码 var addColumn = function() this.fields = ; this.columns = ; this.addColumns = function(name, caption) if (this.fields.length 0) this.fields += ,; if (this.columns.length 0) this.columns += ,; this.fields += name: + name + ; this.columns += header: + caption + ,dataIndex: + name + ,width:100,sortable:true; ; ; /从服务器端获取列,然后动态添加到ColumnModel中 Ext.Ajax.request( url: GenerGrid.url_column, success: function(response, option) if (response.responseText = ) return; GenerGrid.data = new addColumn(); var res = Ext.util.JSON.decode(response.responseText); for (var i = 0; i res.length; i+) for (var p in resi) GenerGrid.data.addColumns(p, p); /动态生成GridPanel makeGrid(); , failure: function() Ext.Msg.alert(消息, 查询出错请查看语句是否配置正确); ); /动态生成GridPanel var makeGrid = function() var cm = new Ext.grid.ColumnModel(eval( + GenerGrid.data.columns + ); cm.defaultSortable = false; var fields = eval( + GenerGrid.data.fields + ); var newStore = new Ext.data.Store( proxy: new Ext.data.HttpProxy( url: GenerGrid.url_data ), reader: new Ext.data.JsonReader( totalProperty: totalPorperty, root: result, fields: fields ) ); newStore.load( params: start: 1, limit: 16 ); var pagingBar = new Ext.PagingToolbar( displayInfo: true, emptyMsg: 没有数据显示, displayMsg: 显示从0条数据到1条数据,共2条数据, store: newStore, pageSize: GenerGrid._pagesize, items: -, pressed: true, enableToggle: true, text: 导出Excel, cls: x-btn-text-icon details, icon: ./images/plugin.gif, toggleHandler: function(btn, pressed) var title = 数据下载; /如果是作为uri后面的参数传值,那就需要对字符进行编码 /如果是通过post的方式传数据,就不要做任何的编码 var cols = eval(cm); var header = ; var dataIndex = ; for (var i = 0; i cols.config.length; i+) header += cols.configi.header + ,; dataIndex += cols.configi.dataIndex + ,; var uri = DataStore.aspx?param=ExpExcel + &filename= + escape(title) + &header= + header + &dataIndex= + dataIndex; window.location.href = uri; , - ); var gridPanel = new Ext.grid.GridPanel( cm: cm, id: grid_panel, loadMask: msg: 正在加载数据,请稍侯. . . . . . , renderTo: GenerGrid.romanceContainer, store: newStore, frame: true, border: true, layout: fit, pageSize: GenerGrid._pagesize, /width:GenerGrid._width, height: GenerGrid._height, viewConfig: forceFit: true , columnLines: false, bbar: pagingBar ); GenerGrid.grid = gridPanel; ; var gdate=function init(Container_id,sqlid) Ext.Msg.alert(提示消息,sqlid);/测试用的 GenerGrid.url_data = DataStore.aspx?sqlid=+sqlid+?m=griddata; /Grid数据源 GenerGrid.url_column = DataStore.aspx?sqlid=+sqlid+?m=gridcolumn; /列数据源 /GenerGrid._width =Ext.get(Container_id).getComputedWidth(); /宽度 GenerGrid._height = 360; /高度 GenerGrid.romanceContainer = Container_id; /渲染Grid的容器 GenerGrid._pagesize = 20; /每页显示数据数 GenerGri

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论