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

controller层:

 StdDayWordQuery:function(btn,event){
var form=Ext.getCmp('queryFormSDW');
paramsForDayWord=Ext.encode(form.getForm().getValues());
Ext.Ajax.request({
url:'getDailyWordNum.action',
headers: {
'Content-Type': 'application/json'
},
params :paramsForDayWord,
async:false,
success:function(response) {
var results=Ext.decode(response.responseText);
if(results.success){
var rows = results.rows;
var header = results.header;
var cols = new Array();
cols.push(new Ext.grid.RowNumberer({
xtype:'rownumberer',
text:'序号',
flex:1,
align:'center'
}));
for(var x in header){
cols.push(new Ext.grid.column.Column({
text: header[x],
dataIndex : header[x],
flex:1,
align:'center'
}));
}
var store = new Ext.data.Store({
fields: header,
data: rows
});
var grid = Ext.getCmp('StudentDayWordGrid');
grid.reconfigure(store,cols);
Ext.getCmp('StudentDayWordGrid').show();
}
else{
Ext.Msg.alert("错误", results.msg);
paramsForDayWord="";
Ext.getCmp('StudentDayWordGrid').hide();
}
}
});
},

view层:

 Ext.define('ExtApp.view.StudentDayWord', {
extend : 'Ext.panel.Panel',
xtype : 'StudentDayWord',
overflowY:'auto',
fieldDefaults: {
labelAlign: 'left',
msgTarget: 'side'
},
layout: {
type:'vbox',
align:'stretch'
},
border:false,
items:[{
height:40,
border:false,
items:[{
xtype:'form',
height:40,
id:'queryFormSDW',
width:'100%',
items:[{
xtype:'container',
padding:5,
layout:{
type:'hbox'
},
items:[{
labelWidth:60,
width: 200,
labelAlign:'right',
xtype:'combo',
fieldLabel:'选择年级',
name:'gradeCode',
id : 'cobStdDayWordGradeCode',
store : 'Grade',
valueField : 'gradeCode',
displayField : 'gradeName',
editable : false,
emptyText : '请选年级',
queryMode : 'local'
},{
xtype : 'textfield',
labelSeparator:':',
labelWidth : 150,
width: 300,
labelAlign : 'right',
name:'userNameORuserCode',
fieldLabel : '输入学生ID或学生姓名'
},{
xtype:'datefield',
labelWidth :60,
width: 200,
fieldLabel:'起止日期:',
id:'startDate',
labelAlign : 'right',
name:'startDate',
format:'Y-m-d'
},{
xtype:'datefield',
labelWidth :20,
width: 160,
fieldLabel:' 至 ',
labelAlign : 'right',
id:'endDate',
labelSeparator:' ',
name:'endDate',
format:'Y-m-d'
},{
xtype : 'button',
width:80,
margin:'0 10 0 10',
id : 'btnStdDayWordQuery',
text : '查询'
},{
xtype : 'button',
width:80,
id : 'btnStdDayWordReset',
text : '重置'
},{
xtype : 'button',
width:80,
margin:'0 10 0 10',
id : 'btnStdDayWordToExcel',
text : '导出Excel'
}]
}]
}]
},{
xtype:'grid',
hidden:true,
columnLines:true,
cls:'custom-grid',
id : 'StudentDayWordGrid',
columns : []
}]
});

extjs动态添加列的更多相关文章

  1. asp.net gridview动态添加列,并获取其数据;

    1,绑定数据前先动态添加列,见方法CreateGridColumn(只在第一次加载动态添加): 2,gvlist_RowDataBound为对应列添加控件: 前台代码: <%@ Page Lan ...

  2. GridView动态添加列之后,导致PostBack(回发)页面数据丢失问题解决

    直入主题,首先声明,这个问题是无法解决的,特此在这说明 一.如何动态添加列,如下: 在页面重写OnInit事件,至于为什么要在这个事件写,根据页面的声明周期和经验可知(不用去别的地方找了,这个我找了之 ...

  3. [转]RDLC报表——动态添加列

    本文转自:http://www.cnblogs.com/pszw/archive/2012/07/19/2599937.html 前言 最近接到一个需求:在给定的数据源中,某(些)列,可能需要单独统计 ...

  4. DataGridview动态添加列

    1.获取数据源(select * from table名称) 2.动态绑定数据源 private void GetTableInfo(DataTable dt) { listBh = new List ...

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

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

  6. gridview动态添加列的问题

    相信大家也和我一样遇到过这种问题,gridview在生成列的时候当列不确定怎么办?下面分享一下自己的解决方法. 举个列子说明一下. 普通列的添加比较简单. BoundField bf = new Bo ...

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

    此篇随笔是2013年根据项目需求开发记录的,不一定符合大众口味,只需了解开发思路,毕竟解决方案多种多样. 下面简单说说需求点吧: (1)通过下拉列表可以选择一个DataSet(数据集),一个DataS ...

  8. C# DataGridView 动态添加列和行

    https://blog.csdn.net/alisa525/article/details/7350471 dataGridView1.ReadOnly = true ;      //禁用编辑功能 ...

  9. 记一次LayUI中Table动态添加列数据

    这次在开发中遇到,有列数不固定的情况.废话不多说,先上图,在上代码. 下面上JS代码 function SearchData() { var dYear = $("#DYear") ...

随机推荐

  1. Linux Gcc编译错误(转载)

    转自:http://www.linuxidc.com/Linux/2012-01/52153.htm Linux系统下的c编程与Windows有所不同,如果你在用gcc编译代码的时候提示‘for’ l ...

  2. P3161 [CQOI2012]模拟工厂

    传送门 先枚举选择哪些订单,然后转为判定是否可行 在能完成的情况下肯定是花越多时间提高生产力越优 我们设可以有\(x\)单位时间来提高生产力,那么如果当前离下一个订单的时间为\(T\)时,这个订单要\ ...

  3. apicloud踩坑集锦

    最近在用apicloud开发,这里录入一些踩坑的地方,从头到尾,要多尴尬有多尴尬,新入app开发,记录一些心得,和遇到的坑以及解决办法. 1,apicloud 打包的Android app ,打开fr ...

  4. [C++11新特性] 智能指针详解

    动态内存的使用很容易出问题,因为确保在正确的时间释放内存是极为困难的.有时我们会忘记释放内存产生内存泄漏,有时提前释放了内存,再使用指针去引用内存就会报错. 为了更容易(同时也更安全)地使用动态内存, ...

  5. 计算机视觉-SIFT特征匹配进行目标转换

    Lowe将SIFT算法分解为如下四步: 1. 尺度空间极值检测:搜索所有尺度上的图像位置.通过高斯微分函数来识别潜在的对于尺度和旋转不变的兴趣点. 关键点定位:在每个候选的位置上,通过一个拟合精细的模 ...

  6. Median Value

    Problem A: Median Value Time Limit: 1 Sec Memory Limit: 128 MB Submit: 874 Solved: 307 [Submit][Stat ...

  7. k-substrings Codeforces - 961F

    不会做.. 官方题解: 1.枚举某个前缀(指题目要求的相同前后缀中的前缀)的中心位置i,那么对应后缀的中心位置已经确定了(n-i+1),可以二分答案求出对于每个中心位置i最大的符合要求的相同前后缀(设 ...

  8. 题解报告:poj 3061 Subsequence(前缀+二分or尺取法)

    Description A sequence of N positive integers (10 < N < 100 000), each of them less than or eq ...

  9. 线程间的参数传递 分类: linux c/c++ 2014-06-15 17:48 607人阅读 评论(0) 收藏

    在多线程编程中,常常需要从主线程传递参数给子线程或在主线程中获得子线程的计算结果, 若使用全局变量实现,必然需要对临界区保护,因此导致大量的切换工作造成效率的低下: 而利用进程间的参数传递可以解决这一 ...

  10. 对char类型的数组进行冒泡排序

    package maopaopaixu; import java.util.Arrays; import java.util.Scanner; public class Demo02 { public ...