效果图如上:

页面代码:

 Ext.QuickTips.init();   //放在图标上会自动提示信息

 Ext.define('ExtApp.view.StudentList' , {
extend : 'Ext.grid.Panel' ,
id : 'StudentListGrid' ,
xtype : 'StudentList' ,
store : 'StudentList' ,
draggable:false, //设置为false则禁用拖拽改变列顺序、
columnLines:true,//添加列的框线样式
viewConfig: {
stripeRows:true //True来实现隔行换颜色
},
tbar : [{
xtype : 'form',
id : 'queryFormSL' ,
width : '100%',
items : [{
xtype : 'container',
padding : 5,
flex : 2,
layout : {
type : 'hbox'
},
items : [{
labelWidth : 60,
labelAlign : 'right',
width: 200,
xtype : 'combo',
fieldLabel:'选择年级',
name:'gradeCode',
id : 'cobStudentListGradeCode',
store : 'Grade',
valueField : 'gradeCode',
displayField : 'gradeName',
editable : false,
emptyText : '请选年级',
queryMode : 'local' },{
xtype : 'textfield',
labelSeparator:':',
labelWidth : 150,
width: 300,
labelAlign : 'right',
id:'SListTextField',
name:'userNameORuserCode',
fieldLabel : '输入学生ID或学生姓名'
},{
xtype : 'button',
id : 'btnStuListQuery',
text : '查询'
},{
xtype : 'button',
id : 'btnStuListReset',
text : '重置'
}]
}]
}],
columns : [
{ xtype:'rownumberer',text:'序号',flex:1, align:'center'},
{ text:'账户ID' , flex:2 , align:'center' , dataIndex:'userCode' },
{ text:'用户姓名' , flex:1 , align:'center' , dataIndex:'userName'},
{ text:'性别' , flex:1 , align:'center' , dataIndex:'sex' },
{ text:'城市' , flex:1 , align:'center' , dataIndex:'cityName' },
{ text:'学校' , flex:1 , align:'center' , dataIndex:'schoolName'},
{ text:'年级号' , flex:1 , align:'center' , dataIndex:'gradeCode'},
{ text:'联系电话' , flex:2 , align:'center' , dataIndex:'tel'},
{ text:'邮箱' , flex:2 , align:'center' , dataIndex:'email'},
{ text:'QQ' , flex:2 , align:'center' , dataIndex:'qq'},
{ header:'账户注册时间',align:"center",flex:3,dataIndex:'firstAccessDate',xtype:'datecolumn',format:'Y-m-d H:i:s'},
{ header: '详细信息' ,
xtype: 'actioncolumn' ,
width: 50 ,
flex : 1 ,
align:'center',
items: [{
icon: 'images/grid.png' ,
tooltip: '详细信息' ,
handler: function(grid, rowIndex, colIndex){
var record = grid.getStore().getAt(rowIndex);
var win = Ext.create('ExtApp.view.StudentDetails').show();
var form = win.down('form').getForm();
form.loadRecord(record);
}
}]
}
],
dockedItems:[{
xtype: 'pagingtoolbar',
store : 'StudentList' , // GridPanel中使用的数据
dock: 'bottom',
displayInfo: true
}]
});

点击"查询"按钮触发事件:

 StuListQuery:function(btn,event){
var store=this.getStore('StudentList');
var form=btn.up('form[id=queryFormSL]');
var grid=form.up('grid[id=StudentListGrid]');
//var grid=Ext.getCmp('StudentListGrid');
var pageBar = grid.down('pagingtoolbar');
var userNameORuserCode=form.getForm().getValues()['userNameORuserCode']; //form.getForm.getValues()返回的是一个数组
var gradeCode = form.getForm().getValues()['gradeCode'];
store.setProxy({
type:'ajax',
actionMethods:{
read:'POST'
},
url:'queryStudent.action',
extraParams:{'userNameORuserCode':userNameORuserCode,
'gradeCode':gradeCode
},
reader:{
type:'json',
root: 'rows',
totalProperty: 'results'
}
});
pageBar.moveFirst();
},

 Extjs中找Form,Extjs找组件的方式:

1,Extjs.getCmp

2,通过组件之间的关系,up,down

Extjs查询实现的更多相关文章

  1. EXTJS4 Grid Filter 插件的使用 与后台数据解析------Extjs 查询筛选功能的实现

    先汗一个,一个小功能又踢腾了一天.本来这个带Demo的,但是上面介绍的不是很详细.用的时候问题不大,主要问题在文件导入方面.以为这个插件的使用和其他的不一样. 1.首先是需要引入文件的位置:如图 需要 ...

  2. Python开发入门与实战14-基于Extjs的界面

    14. 基于Extjs的界面 上一章我们实现了一个原生的html例子,本章我们将采用Extjs实现界面的展现,来说明MVC模式下我们是怎么考虑界面与业务层的关系的. 14.1. 引用Extjs目录 首 ...

  3. MongoDB的查询

    一.Find操作 二.分页和排序 三.游标的使用 一.Find查询 事前准备:插入如下数据 db.Students.insert([ { _id:1, name:"Zhao", a ...

  4. Extjs4.2 Grid搜索Ext.ux.grid.feature.Searching的使用

    背景 Extjs4.2 默认提供的Search搜索,功能还是非常强大的,只是对于国内的用户来说,还是不习惯在每列里面单击好几下再筛选,于是相当当初2.2里面的搜索,更加的实用点,于是在4.2里面实现. ...

  5. ExtJS 4.2 业务开发(二)数据展示和查询

    本篇开始模拟一个船舶管理系统,提供查询.添加.修改船舶的功能,这里介绍其中的数据展示和查询功能. 目录 1. 数据展示 2. 数据查询 3. 在线演示 1. 数据展示 在这里我们将模拟一个船舶管理系统 ...

  6. ExtJs 可查询的下拉框

    最近项目中有个需求,就是有四个模块需要加载一个主表的内容,比如说这个表叫项目表(比如项目表里有两个字段一个是项目ID--projCd,还有一个是项目名称--projNm).主表的内容的要放在一个下拉框 ...

  7. [ExtJS5学习笔记]第三十五节 sencha extjs 5 组件查询方法总结

    一个UI前台组件肯定会比较多,我们通常习惯性的使用ID来获取需要操作的组件,但是这种方法是extjs推荐的么?有没有extjs推荐使用的获取组件的方法呢? 目录 目录 extjs的查询组件的API 查 ...

  8. Extjs tree 过滤查询功能

    转载: http://blog.csdn.net/xiaobai51509660/article/details/36011899 Extjs4.2中,对于treeStore中未实现filterBy函 ...

  9. Extjs treePanel过滤查询功能【转】

    Extjs4.2中,对于treeStore中未实现filterBy函数进行实现,treestore并未继承与Ext.data.Store,对于treePanel的过滤查询功能,可有以下两种实现思路: ...

随机推荐

  1. python的一些常用函数

    1 filter(function, iterable) 等价于(item for item in iterable if function(item)) 就是说,filter会遍历iterable中 ...

  2. HDU 5832A water problem

    大数 判断整除 /* *********************************************** Author :guanjun Created Time :2016/8/14 1 ...

  3. 【HDU 2010】水仙花数

    http://acm.hdu.edu.cn/showproblem.php?pid=2010 春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:“水仙花数”是指一个三位 ...

  4. 通过绑定ip地址可以暂时解决抢占ip问题

    以前设置的路由器密码都忘记了 admin重复,在工作上遇到了 一个去除str左右两边的空格换行符回车等 trim

  5. BZOJ_2424_[HAOI2010]订货_最小费用最大流

    BZOJ_2424_[HAOI2010]订货_最小费用最大流 Description 某公司估计市场在第i个月对某产品的需求量为Ui,已知在第i月该产品的订货单价为di,上个月月底未销完的单位产品要付 ...

  6. 记录一次Mysql死锁排查过程

    背景 以前接触到的数据库死锁,都是批量更新时加锁顺序不一致而导致的死锁,但是上周却遇到了一个很难理解的死锁.借着这个机会又重新学习了一下mysql的死锁知识以及常见的死锁场景.在多方调研以及和同事们的 ...

  7. 1617: [Usaco2008 Mar]River Crossing渡河问题(dp)

    1617: [Usaco2008 Mar]River Crossing渡河问题 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 1219  Solved:  ...

  8. [Swift]Set(集)转换为Array(数组)

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  9. AutoCAD C# 利用反射导出所注册的命令

    主函数导出某一程序集AutoCAD 注册命令 /// <summary> ///提取所有的命令 /// </summary> /// <param name=" ...

  10. linux 定义变量 ,添加变量值

    1.设置值$name=test2. 输出变量的值 echo $echo $name3. 增加变量内容PATH=$PATH:/home/bin/testPATH="$PATH":/h ...