EXTJS4 Grid Filter 插件的使用 与后台数据解析------Extjs 查询筛选功能的实现
2013-06-28 18:32
961 查看
先汗一个,一个小功能又踢腾了一天。本来这个带Demo的,但是上面介绍的不是很详细。用的时候问题不大,主要问题在文件导入方面.以为这个插件的使用和其他的不一样。
1.首先是需要引入文件的位置:如图
需要把整个grid都考到vs下,vs中结构如下:
2.设置路径,将文件导入
3.组织插件配置,这里你也可以将它组织成类
这里的filter的type有string,boolean,numeric,date,还有list。前四个很容易理解,第五个类似enum,就是列可供选择的常量值。
4.将插件放入gridpanel
5.怎么在后台获取传入的值呢?
先看下筛选的时候都往后台传了什么:
这还只是一条筛选,如果再几个条件更麻烦,解决方法如下:
然后注册registeredin
9.后台数据改怎么接受
OK,结束,本来想给大家看看贴点数据呢,电脑卡的要死,就算了……,如果感觉对您有所帮助的话请点推荐,谢谢……
1.首先是需要引入文件的位置:如图
需要把整个grid都考到vs下,vs中结构如下:
2.设置路径,将文件导入
Ext.Loader.setConfig({enabled:true}); Ext.Loader.setPath('Ext.ux','../ext-js4.2/ux'); Ext.require([ '*', 'Ext.toolbar.Paging', 'Ext.ux.grid.FiltersFeature',//必不可少的 'Scripts.*' ])
3.组织插件配置,这里你也可以将它组织成类
varfilters={ alias:'widget.filters', ftype:'filters', encode:false,//jsonencodethefilterquery //指定要对哪些列进行过滤 filters:[{ type:'boolean', dataIndex:'IsSuccessed' }] };
这里的filter的type有string,boolean,numeric,date,还有list。前四个很容易理解,第五个类似enum,就是列可供选择的常量值。
4.将插件放入gridpanel
features:[filters],
5.怎么在后台获取传入的值呢?
先看下筛选的时候都往后台传了什么:
这还只是一条筛选,如果再几个条件更麻烦,解决方法如下:
//外层数据 publicclassExtFilterInfo { publicstringField{get;set;} publicExtFilterDataData{get;set;} } //内层数据 publicclassExtFilterData { publicstringType{get;set;} publicstringValue{get;set;} publicstringComparison{get;set;} }
模型数据绑定解析
publicclassExtFilterInfoModelBinder:DefaultModelBinder { publicoverrideobjectBindModel(ControllerContextcontrollerContext,ModelBindingContextbindingContext) { varfilter=(ExtFilterInfo)base.BindModel(controllerContext,bindingContext); varfield=bindingContext.ValueProvider.GetValue(bindingContext.ModelName+"[field]"); if(field!=null) { filter.Field=field.AttemptedValue; } vartype=bindingContext.ValueProvider.GetValue(bindingContext.ModelName+"[data][type]"); varvalue=bindingContext.ValueProvider.GetValue(bindingContext.ModelName+"[data][value]"); varcomparison=bindingContext.ValueProvider.GetValue(bindingContext.ModelName+"[data][comparison]"); if(filter.Data==null) { filter.Data=newExtFilterData(); } if(type!=null) { filter.Data.Type=type.AttemptedValue; } if(value!=null) { filter.Data.Value=value.AttemptedValue; } if(comparison!=null) { filter.Data.Comparison=comparison.AttemptedValue; } returnfilter; } }
然后注册registeredin
Application_Start方法中(将下面代码放进去)
ModelBinders.Binders.Add(typeof(Oland.HIP.WebAdmin.API.ExtFilterInfo),newOland.HIP.WebAdmin.API.ExtFilterInfoModelBinder());
9.后台数据改怎么接受
publicPageData<Monitor[]>Get([FromUri]string_dc,[FromUri]intpage,[FromUri]intstart,[FromUri]intlimit,[FromUri]ExtFilterInfo[]filter) { }
OK,结束,本来想给大家看看贴点数据呢,电脑卡的要死,就算了……,如果感觉对您有所帮助的话请点推荐,谢谢……
相关文章推荐
- 微信小程序实现快递查询功能(界面传值、JSON数据请求和解析、radio-group的使用...)
- 使用 Dojo 显示表格数据,并带筛选(filter)功能(2) - filter 插件
- Extjs分页使用java实现数据库数据查询
- 使用Redis的脚本功能实现Redis中数据简单查询
- extremetable+hibernate实现分页 关于结合hibernate后台数据分页和eXtremeTable分页功能的使用
- 使用ajax、pageHelpler分页插件、利用json数据特性实现分页查询
- extremetable+hibernate实现分页 关于结合hibernate后台数据分页和eXtremeTable分页功能的使用
- Extjs使用Ajax对实现后台查询展示
- jquery raty星级评分插件的具体使用(可以结合ajax和后台交互)以及点赞功能的实现
- 使用Redis的脚本功能实现Redis中数据简单查询
- ThinkPHP3.2 使用 PHPExce插件 实现 数据导出 功能
- 使用ExtJs 来显示数据,并实现数据的分页功能
- 带有分页排序功能的表格插件的使用(通过ajax获取后台数据)
- 我的ASPxGridView控件的数据是在后台绑定的,但是实现不了筛选和分页的功能,只能显示一页的数据?
- [置顶] ExtJs4.2应用:使用ExtJs扩展组件searchfield实现数据搜索功能
- 使用插件bootstrap-table实现表格记录的查询、分页、排序等处理
- 使用ADF-BC 实现查询功能之三:如何在页面装载时自动执行查询?
- 基于bootstrap-select插件,实现select下拉框模糊查询功能
- 使用SQL Server Analysis Services数据挖掘的关联规则实现商品推荐功能(七)
- 使用logstash-6.2.2和logstash-input-jdbc插件实现mysql数据同步到Elasticsearch