Extjs動態生成表頭
原文:Extjs動態生成表頭
var cm = [{ header : "編號", dataIndex : "id", width : 65 }, { header : "名稱", dataIndex : "name", width : 65 }, { header : "路徑", dataIndex : "url", width : 65 }] var colModel = new Ext.grid.ColumnModel({ columns : cm }); var fd = ["id", "name", "url"]; var store = new Ext.data.JsonStore({ fields : fd }) var grid = new Ext.grid.GridPanel({ cm : colModel, store : store, tbar : [{ xtype : "combo", id : 'my_combo', triggerAction : "all", store : ["新增列","更換列"], mode : 'local', resizable : true, editable: false, lazyRender : true, width : 100 },"-",{ text : "生成", icon : "images/icons/add.png", cls : "x-btn-text-icon", handler : function() { var temp = Ext.getCmp('my_combo').getValue(); if(temp == null || temp == "") return; var newfd=""; var newcm=""; if(temp == "新增列"){//在原有列的基礎上追加新的列 newfd = fd; newcm = cm; var res = {//要新增的列資訊,可以動態獲取 fields : [{ name : "sex" }], columns : [{ header : '性別', dataIndex : "sex", width : 65 }] }; var fields = res.fields; var columns = res.columns; for (var i = 0; i < fields.length; i++) {//自己可以寫控制不重複追加 newfd.push(fields[i]); newcm.push(columns[i]); } }else if(temp == "更換列"){//更換表格中所有的列 var res = {//要更換的列資訊,可以動態獲取 fields : ["number", "age", "address"], columns : [{ header : '號碼', dataIndex : "number", width : 80 },{ header : '年齡', dataIndex : "age", width : 80 },{ header : '地址', dataIndex : "address", width : 80 }] }; newfd = res.fields; newcm = res.columns; } // 重新繫結store及column newStore = new Ext.data.JsonStore({ fields : newfd }); var newColumnModel = new Ext.grid.ColumnModel(newcm); grid.reconfigure(newStore , newColumnModel);//使用新的Store和ColumnModel並重新整理 //列變動之後,就可以做資料的載入了,載入的就是對應新的列的資料了。 } }] }) var myWin = new Ext.Window({ title:"動態改變ColumnModel", width : '600', height : 500, frame : true, layout : 'fit', items : [grid] }); myWin.show();
由最程式碼官方編輯於2014-6-6 11:39:43
相關文章
- 讓系統自動生成表頭的方法(轉)
- vue中怎麼動態生成form表單VueORM
- 前端匯出Excel之動態多級表頭前端Excel
- Vue.js+ElementUI+vant生成動態表單配置Vue.jsUI
- vue自定義表單生成器,可根據json引數動態生成表單VueJSON
- ajax動態生成table
- Python教程:生成Excel並更改表頭PythonExcel
- Extjs xtype 一覽表JS
- 用ASP動態生成JavaScript的表單驗證程式碼 (轉)JavaScript
- JavaScript動態生成html元素JavaScriptHTML
- Emit動態生成程式碼MIT
- cmake:生成靜態庫和動態庫
- 動態表名
- WPF中輕鬆生成動態圖表:例項詳解(MVVM模式)MVVM模式
- 動態生成簽名工具類
- 動態生成ios plist的方法iOS
- asp.net動態表格生成ASP.NET
- jq動態生成二維碼
- easyui datagrid 動態生成列UI
- BCB動態生成控制元件控制元件
- 【react】實現動態表單中巢狀動態表單React巢狀
- ExtJS 3.4 表單控制元件JS控制元件
- angular動態表單Angular
- 動態sql 報表SQL
- 建立動態內表
- mysql 動態生成測試資料MySql
- Flutter 熱更新及動態UI生成FlutterUI
- 利用shell指令碼生成動態sql指令碼SQL
- javascript如何動態生成一個元素JavaScript
- 請教,如何動態生成Java類?Java
- Vue+Element+JS動態生成form表單實現新增和刪除操作VueJSORM
- 乾貨 | 論文解讀:基於動態詞表的對話生成研究
- 動態效能表V$sysstat
- Oracle動態效能表(1)Oracle
- 學習動態效能表
- uniapp動態賦值頭部<title>APP賦值
- 動態內表及動態ALV顯示(轉)
- oracle procedure plsql 動態sql之動態傳遞表OracleSQL