/**
* 系统通用下拉选择Gird
*/
Ext.define("Common.picker.GridPicker", {
extend: "Ext.form.field.Picker",
alias: 'widget.gridPicker', displayField: null, valueField: null, matchFieldWidth: false, store: null, columns: null, pickerWidth: 400, pickerHeight: 300, editable: false, /**
* 创建Picker
* @return {Ext.grid.Panel}
*/
createPicker: function() {
var me = this,
picker = me.createComponent(); picker.on("itemclick", me.onItemClick, me); me.on("focus", me.onFocusHandler, me);
return picker;
}, /**
* 创建gridPanel,子类可以扩展返回个性化grid(比如条件查询等)
* @return {Ext.grid.Panel}
*/
createComponent: function() {
var me = this,
picker = Ext.create("Ext.grid.Panel", {
floating: true,
store: me.store,
columns: me.columns,
width: me.pickerWidth,
heigkt: me.pickerHeight,
dockedItems: [{
xtype: 'pagingtoolbar',
store: me.store,
dock: 'bottom',
displayInfo: true
}]
});
return picker;
}, /**
* 处理grid行单击事件
*/
onItemClick: function(view, record, item, index, e, eOpts ) {
var me = this;
me.setValue(record.get(me.valueField));
me.getPicker().hide();
me.inputEl.focus();
}, /**
* 获得焦点弹出
*/
onFocusHandler: function() {
var me = this;
if(!me.isExpanded) {
this.expand();
this.focus();
}
}, /**
* 设置值
* @param {Mixed} value
* @return {Common.picker.GridPicker} this
*/
setValue: function(value) {
var me = this,
record; me.value = value; if (me.store.isLoading()) {
//当store加载暂时不做处理
return me;
} if(value === undefined) {
return me;
} else {
record = me.getPicker().getSelectionModel().getSelection()[0];
} me.setRawValue(record ? record.get(me.displayField) : ''); return me;
}, /**
* 返回field的值
* @return {String}
*/
getValue: function() {
return this.value;
}, /**
* 返回提交到服务器端的值
* @return {String}
*/
getSubmitValue: function(){
return this.value;
} });

Extjs 弹出下拉Grid的更多相关文章

  1. IOS第二天-新浪微博 - 添加搜索框,弹出下拉菜单 ,代理的使用 ,HWTabBar.h(自定义TabBar)

    ********HWDiscoverViewController.m(发现) - (void)viewDidLoad { [super viewDidLoad]; // 创建搜索框对象 HWSearc ...

  2. easyui combobox点击输入框弹出下拉框

    由于easyui combobox需要点击下拉箭头才能下拉,不能像select标签那样点击输入框就下拉,所以觉得不太方便,查看了一下,combobox弹出框是一个div,原本想在他的输入框的点击事件中 ...

  3. 有序无序ul->li ol->li菜单,默认点击当前弹出下拉,再次点击收起下拉菜单

    实现这一效果利用css和js技术结合 以ul->li为例子 <!DOCTYPE html><html lang="en"><head> & ...

  4. JQuery autocomplete获得焦点触发弹出下拉框

    需求:autocomplete控件,当点击获得焦点的时候也要弹出下拉列表(autocomplete默认是输入之后才会跟随出下拉列表),下面直接贴代码. js代码: $("#customerN ...

  5. 用mobiscroll.js的treelist实现弹出下拉效果

    首先跟上次说的一样, 第一步:引入js.css样式 1)mobiscroll-2.13.2.full.min.css 2)jquery.min.js 3)mobiscroll-2.13.2.full. ...

  6. 【android开发】使用PopupWindow实现页面点击顶部弹出下拉菜单

    没有太多花样,也没有很复杂的技术,就是简单的PopupWindow的使用,可以实现点击弹出一个自定义的view,view里可以随便设计,常用的可以放一个listview. demo中我只是一个点击展示 ...

  7. 有序无序Ul->Li Ol->Li菜单,默认点击当前弹出下拉,再次点击收起下拉菜单(变形2 ---修饰)

    从上面可以看出,两个问题,第一:下拉出现的太快太突然,第二:再点击下一个下拉菜单的时候,上一个不会闭合,针对这两个问题,接下来会一 一解决. 解决下拉太快: js中有个jquery效果,有一个效果是j ...

  8. 强大DevExpress,Winform LookUpEdit 实现多列查询 gridview弹出下拉选择 z

    关键代码请参考http://www.devexpress.com/Support/Center/p/K18333.aspx 最新DEMO 下载 The current GridLookUpEdit's ...

  9. ActionBar点击弹出下拉框操作

    首先: getActionBar().setDisplayShowTitleEnabled(false); ActionBar.LayoutParams lp = new ActionBar.Layo ...

随机推荐

  1. 在asp.net中执行存储过程(转)

    摘自:http://www.cnblogs.com/smhy8187/articles/677742.html 声明:本例用的数据库是系统提供的pubs数据库,表是是employee,编程语言用C# ...

  2. windows named pipe 客户端 服务器

    可以实现多客户端对一服务端,服务端为客户端提供服务. 其实一服务端对应每一个client pipe都新建立了一个pipe.windows允许建立多个同名pipe 效果: 服务端代码: #define ...

  3. HDUOJ------(1230)火星A+B

    火星A+B Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  4. 如何在cmd命令行中查看、修改、删除与添加环境变量,语法格式例子:set path;echo %APPDATA%

    如何在cmd命令行中查看.修改.删除与添加环境变量 首先明确一点: 所有的在cmd命令行下对环境变量的修改只对当前窗口有效,不是永久性的修改.也就是说当关闭此cmd命令行窗口后,将不再起作用.永久性修 ...

  5. SVN解决创建文件时不带锁

    解决创建文件时不带锁   C:\Documents and Settings\你的用户名\Application Data\Subversion   找到上面的用户路径 打开config添加 ### ...

  6. iptalbes -F

    iptalbes -F -F, --flush [chain] Flush the selected chain (all the chains in the table if none is giv ...

  7. Solutions for the Maximum Subsequence Sum Problem

    The maximum subarray problem is the task of finding the contiguous subarray within a one-dimensional ...

  8. Linux内核(2) - 分析内核源码如何入手(上)

    透过现象看本质,兽兽们无非就是一些人体艺术展示.同样往本质里看过去,学习内核,就是学习内核的源代码,任何内核有关的书籍都是基于内核,而又不高于内核的. 既然要学习内核源码,就要经常对内核代码进行分析, ...

  9. 安装ubuntu和windows双系统后,如何修改默认启动项

    在安装了Ubuntu16.04系统之后,系统会默认自启动Ubuntu16.04,而我们大多数情况下可能都在使用windows系统,不修改默认设置,不经意间便会启动了Ubuntu16.04,通过我的经历 ...

  10. Java中关于日期类那些方法

                                                                       转载请注明出处http://blog.csdn.net/harry ...