extjs动态添加列

可以根据日期,动态的插入一列

controller层:

 1 StdDayWordQuery:function(btn,event){
 2         var form=Ext.getCmp(‘queryFormSDW‘);
 3         paramsForDayWord=Ext.encode(form.getForm().getValues());
 4         Ext.Ajax.request({
 5             url:‘getDailyWordNum.action‘,
 6             headers: {
 7                 ‘Content-Type‘: ‘application/json‘
 8             },
 9             params :paramsForDayWord,
10             async:false,
11             success:function(response) {
12                 var results=Ext.decode(response.responseText);
13                     if(results.success){
14                     var rows = results.rows;
15                     var header = results.header;
16                     var cols = new Array();
17                     cols.push(new Ext.grid.RowNumberer({
18                             xtype:‘rownumberer‘,
19                             text:‘序号‘,
20                             flex:1,
21                             align:‘center‘
22                     }));
23                     for(var x in header){
24                         cols.push(new Ext.grid.column.Column({
25                             text: header[x],
26                             dataIndex : header[x],
27                             flex:1,
28                             align:‘center‘
29                         }));
30                     }
31                     var store = new Ext.data.Store({
32                         fields: header,
33                         data: rows
34                     });
35                     var grid = Ext.getCmp(‘StudentDayWordGrid‘);
36                     grid.reconfigure(store,cols);
37                     Ext.getCmp(‘StudentDayWordGrid‘).show();
38                 }
39                 else{
40                     Ext.Msg.alert("错误", results.msg);
41                     paramsForDayWord="";
42                     Ext.getCmp(‘StudentDayWordGrid‘).hide();
43                 }
44             }
45         });
46     },

view层:

 1 Ext.define(‘ExtApp.view.StudentDayWord‘, {
 2     extend : ‘Ext.panel.Panel‘,
 3     xtype : ‘StudentDayWord‘,
 4     overflowY:‘auto‘,
 5     fieldDefaults: {
 6         labelAlign: ‘left‘,
 7         msgTarget: ‘side‘
 8     },
 9     layout: {
10         type:‘vbox‘,
11         align:‘stretch‘
12     },
13     border:false,
14     items:[{
15         height:40,
16         border:false,
17         items:[{
18             xtype:‘form‘,
19             height:40,
20             id:‘queryFormSDW‘,
21             width:‘100%‘,
22             items:[{
23                 xtype:‘container‘,
24                 padding:5,
25                 layout:{
26                     type:‘hbox‘
27                 },
28                 items:[{
29                     labelWidth:60,
30                     width: 200,
31                     labelAlign:‘right‘,
32                     xtype:‘combo‘,
33                     fieldLabel:‘选择年级‘,
34                     name:‘gradeCode‘,
35                     id : ‘cobStdDayWordGradeCode‘,
36                     store : ‘Grade‘,
37                     valueField : ‘gradeCode‘,
38                     displayField : ‘gradeName‘,
39                     editable : false,
40                     emptyText : ‘请选年级‘,
41                     queryMode : ‘local‘
42                    },{
43                     xtype : ‘textfield‘,
44                     labelSeparator:‘:‘,
45                     labelWidth : 150,
46                     width: 300,
47                     labelAlign : ‘right‘,
48                     name:‘userNameORuserCode‘,
49                     fieldLabel : ‘输入学生ID或学生姓名‘
50                 },{
51                     xtype:‘datefield‘,
52                     labelWidth :60,
53                     width: 200,
54                     fieldLabel:‘起止日期:‘,
55                     id:‘startDate‘,
56                     labelAlign : ‘right‘,
57                     name:‘startDate‘,
58                     format:‘Y-m-d‘
59                 },{
60                     xtype:‘datefield‘,
61                     labelWidth :20,
62                     width: 160,
63                     fieldLabel:‘  至 ‘,
64                     labelAlign : ‘right‘,
65                     id:‘endDate‘,
66                     labelSeparator:‘ ‘,
67                     name:‘endDate‘,
68                     format:‘Y-m-d‘
69                 },{
70                     xtype : ‘button‘,
71                     width:80,
72                     margin:‘0 10 0 10‘,
73                     id : ‘btnStdDayWordQuery‘,
74                     text : ‘查询‘
75                 },{
76                     xtype : ‘button‘,
77                     width:80,
78                     id : ‘btnStdDayWordReset‘,
79                     text : ‘重置‘
80                 },{
81                     xtype : ‘button‘,
82                     width:80,
83                     margin:‘0 10 0 10‘,
84                     id : ‘btnStdDayWordToExcel‘,
85                     text : ‘导出Excel‘
86                 }]
87             }]
88         }]
89     },{
90         xtype:‘grid‘,
91         hidden:true,
92         columnLines:true,
93         cls:‘custom-grid‘,
94         id : ‘StudentDayWordGrid‘,
95         columns : []
96     }]
97 });
98     
时间: 2024-08-30 01:35:48

extjs动态添加列的相关文章

EasyUI datagrid动态添加列

任务描述:根据用户选择时间段,生成列数据,如图 一.先定义好datagrid固定的数据列 <script type="text/javascript"> $(document).ready(function () { $("#td_Radio").datagrid({ striped: true, border: true, iconCls: 'icon-edit', //图标 singleSelect: true, autoRowHeight: tru

动态添加列之后,铵钮事件怎样写?

有网友来问题,“想通过后台代码给gridview绑定数据,然后在最后一列添加Button,点击按钮后获得所在行的某个数据, 在网上找到了动态生成按钮的程序,但是不知道怎么给这个按钮添加一个Click事件” : 网友也许是看了Insus.NET这篇<动态为GridView控件创建列>http://www.cnblogs.com/insus/archive/2011/06/10/2077538.html .此篇中只有演示动态添加一列,此列是一个图片铵钮. 想实现GridView中任何一行或是任何一

Wpf DataGrid动态添加列,行数据(二)

这是第二中方法,可直接绑定,我这里只是做出了一种思路,并不是最完美. 这里注意一下,因为我里面引用了MVVMLight,所以可能代码不是复制过去就能用了的. 样式也是,所以复制过去看不是我贴出来的界面这也不奇怪.代码: <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="*"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions

WPF DataGrid表头合并且动态添加列

DataGrid要实现表头合并的效果.首先使用DataGridTemplate作为列.同时修改HeaderTemplate.但是效果没有那么好且有其他问题. 真正的修改的地方是修改HeaderStyle的DataGridColumnHeader. 内容模板则是修改CellTemplate就好了 如果要是同态添加列则是需要使用继承DataGridTemplate的类. 重写GenerateElement方法,并设置好内容模板的数据源. 所以大部分的内容都是C#代码,Xaml的部分则就是datate

GridView动态添加列并判断绑定数据DataTable的列类型控制展示内容

此篇随笔是2013年根据项目需求开发记录的,不一定符合大众口味,只需了解开发思路,毕竟解决方案多种多样. 下面简单说说需求点吧: (1)通过下拉列表可以选择一个DataSet(数据集),一个DataSet存在可以互相关联的多个DataTable(数据表格),DataTable数据来源于数据库视图:SQL语句关联比较复杂 (2)一个DataTable(数据表格)存在多个可供选择查询显示的Column(列),支持动态组合 (3)Column(列)同时支持作为查询条件进行并运算 先看效果吧,免得待会看

DataSet 动态添加列

public DataSet GetNewId(List<string> IdArr) { DataSet ds = new DataSet(); DataTable newtb = new DataTable(); DataColumn column = new DataColumn("cnt", typeof(string));//新增列 newtb.Columns.Add(column); for (int i = 0; i < IdArr.Count; i++

easyui dataGrid 动态添加列

其实很简单.新手创作,不好勿喷.jsp页面: 1 <script> 2 $(function () { 3 4 $.getJSON('${pageContext.request.contextPath}/resources/json/datagrid_data.json',function(result){ 5 var columns=new Array(); 6 $.each(result.headers[0], function(i, field){ 7 var column={}; 8

django数据库动态添加列

方法一: python manage.py migrate 方法二: python manage.py migrate 效果: ---〉

给Grid动态添加列和添加样式

BudgetProjectSearch: function () { $("#load").show(); var that = this; var postmodel = {}; postmodel.year = that.YearStr; postmodel.month = that.monthvalue; //获取所有选中的节点 var nodes = $("#tree").data("kendoTreeView").dataSource.