/**
* 系统通用下拉选择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. js 动态增加行删除行

    <body> <table id="tableID" border="1" align="center" width=&q ...

  2. Log4Net的概念和使用

    第一篇文本日志 log4net简介: log4net简介: log4net是一个功能著名的开源日志记录组件,由java平台而来. 利用log4net可以方便地将日志信息记录到文件.控制台.Window ...

  3. windows安装tensorflow GPU

    一.安装Anaconda Anaconda是Python发行包,包含了很多Python科学计算库.它是比直接安装Python更好的选择. 二.安装Tensorflow 如果安装了tensorflow, ...

  4. 理解Lucene中的Analyzer

    学习一个库,最好去官网.因为很多库API变动十分大,从博客上找的教程都过时了. Lucene原理就是简简单单的"索引",以空间换时间.但是Lucene将这件事做到了极致,后人再有想 ...

  5. LINUX使用DVD光盘或者ISO作为本地YUM源

    先把光盘或 ISO 文件挂载到文件系统: # mkdir /media/iso 挂载光盘: # mount /dev/cdrom /media/iso 或挂载 ISO 文件: mount -o loo ...

  6. PLSQL_标准删除的方式Delete/Drop/Truncate区别和比较(概念)

    2014-06-02 Created By BaoXinjian

  7. OGG_GoldenGate复杂参数定义(案例)

    2014-03-10 Created By BaoXinjian

  8. 再看C#中的托付和事件

    在一口一个设计模式--观察者模式中.我们已经知道怎样应用观察者模式,但通过近期的深入学习,发现观察者模式存在下面缺陷: 1.抽象通知者依赖于抽象观察者: 2.每一个详细观察者被调用的方法必须一致. 比 ...

  9. TDR,阻抗匹配,反射,源端匹配,终端匹配

    什么是阻抗 阻抗分三种,电阻.电容.电感,三者阻抗表达式如下: 符号 单位 表达式 备注 电阻 R 欧姆 Ω 电压电流相位相同 电容 C 法拉 F 电压相位落后电流90度 电感 L 亨利 H 电压相位 ...

  10. Spring中xml文件配置也可以配置容器list、set、map

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...