关于EXTJS 的grid里的可编辑textfield 的按键事件问题

问题描述

varfiledata={rows:args[1].file}varjsonstore=newExt.data.JsonStore({root:'rows',data:filedata,fields:[{name:'name',mapping:'name'},{name:'filemask',mapping:'filemask'},{name:'file_required',mapping:'file_required'}],listeners:{load:loadCallBack},autoLoad:true});functionloadCallBack(jsonstore,records,options){}varfm=Ext.form;varcsm=newExt.grid.CheckboxSelectionModel();varcm=newExt.grid.ColumnModel({defaults:{sortable:true},columns:[newExt.grid.RowNumberer({header:'#'}),{id:'name',header:'文件/目录',dataIndex:'name',width:220,editor:newfm.TextField({allowBlank:false,enableKeyEvents:true,keys:[{key:Ext.EventObject.F2,fn:function(){alert("");},scope:this}]})},{header:'通配符',dataIndex:'filemask',id:'filemask',width:130,editor:newfm.TextField({allowBlank:true})},{header:'要求',dataIndex:'file_required',id:'file_required',width:70,editor:newfm.ComboBox({editable:false,typeAhead:true,triggerAction:'all',transform:'yesorno',lazyRender:true,listClass:'x-combo-list-small'})},csm]});filegrid=newExt.grid.EditorGridPanel({store:jsonstore,cm:cm,renderTo:'editor-grid-1',//width:565,height:300,autoExpandColumn:'name',frame:true,clicksToEdit:1,sm:csm,tbar:['->',{xtype:'button',style:'padding:5555',text:'添加',handler:function(){varf=document.getElementById("fileORfolder").value;if(f==null||f==""){return;}else{varfilename=newString(document.getElementById("fileORfolder").value);varindex=filename.lastIndexOf(".");if(index==-1){alert("文件名不合法!!");return;}varpostfix=filename.substr(index+1);postfix=postfix.toLocaleLowerCase();if("xls"==postfix){alert("请选择文本类型的文件!!");return;}}varPlant=filegrid.getStore().recordType;varp=newPlant({name:f,filemask:document.getElementById('filemask_f').value});filegrid.stopEditing();varcount=jsonstore.getCount();jsonstore.insert(count,p);filegrid.startEditing(0,0);//varobj=document.getElementById("fileORfolder");//obj.outerHTML=obj.outerHTML;//document.getElementById("fileORfolder").value='';document.getElementById("fileORfolder").value='';document.getElementById("filemask_f").value='';}},{xtype:'button',style:'padding:5555',text:'清空',id:'clearAll',name:'butn',handler:function(){filegrid.stopEditing();jsonstore.removeAll();filegrid.startEditing(0,0);}},{xtype:'button',text:'删除选定',id:'deleteS',name:'butn',style:'padding:5555',handler:function(){filegrid.stopEditing();filegrid.getSelectionModel().each(function(rec){jsonstore.remove(rec);});filegrid.startEditing(0,0);}}]});//---------------------文件结束--------------------红色部分的注册的按键为什么不能用啊急求解答

解决方案

解决方案二:
也很迷惑,调试看过,根本就没有keyCode,估计是被拦截然后做了处理的原因;而且估计你用混淆了keys和specialkey,keys面板类才有,specialkeyfield系列可用;这种情况连keydown都没有能捕获到含有KeyCode的事件;

时间: 2024-09-27 16:22:23

关于EXTJS 的grid里的可编辑textfield 的按键事件问题的相关文章

关于extjs里直接在grid里的修改

问题描述 谁知道用extjs怎样直接在grid里修改,我是用了一个按钮,有添加,删除,修改,保存,我想直接在grid里修改,然后点保存,就保存到数据库,可是做的,添加和修改同用一个保存按钮,有谁会,求救,js和aspx代码和思路.

extjs-Extjs的win里含forml和一个grid,我怎么实现改变form的值,grid里的字段也变化

问题描述 Extjs的win里含forml和一个grid,我怎么实现改变form的值,grid里的字段也变化 如图所示,一个win里包含一个formPanel和一个gridPanel,我怎么实现选择税种的时候,grid里的含税金额跟随变化,请大家多多帮助小弟 解决方案 combobox添加change事件获取对应的数据行调用Ext.data.Model的set方法更新http://docs.sencha.com/extjs/4.1.3/#!/api/Ext.form.field.ComboBox

如何实现Grid里有comboBox

问题描述 如何实现Grid里有comboBox急 解决方案 解决方案二:用模板列解决方案三:也可写在RowBounted()事件中解决方案四:是DataGrid还是DataGridView?是winform还是Asp.Net??若是DataGrid比较麻烦一点,DataGridView的话winform中直接编辑列(Asp.net中是使用模板列)解决方案五:如果是DataGridView,选中,右键属性,可以对他的Columns进行编辑,添加一个DataGridViewComboBoxColum

[ExtJS5学习笔记]第三十四节 sencha extjs 5 grid表格之java后台导出excel

继上次使用js前端导出excel之后,还有一个主要大家比较关注的是后台实现导出excel,因为本人开发使用的java所以这里使用apache的开源项目poi进行后台excel的导出. 本文目录 本文目录 poi项目下载及加载 extjs前端导出设置 extjs后台对应的解决方案 创建excel工作簿 创建一个excel页签 生成excel样式并初始化 产生表格标题行build headers 构造数据行build rows poi项目下载及加载 POI项目是apache官网的一个开源项目,其主要

[ExtJS5学习笔记]第三十三节 sencha extjs 5 grid表格导出excel

使用extjs肯定少不了使用表格控件,用到表格,领导们(一般)还是惯于使用excel看数据,所以用到extjs表格的技术猿们肯定也会有导出表格excel这一个需求,本文主要针对如何在用extjs将grid表格导出到excel,使用的是前端导出,不涉及后端. 源代码打包下载 将源代码嵌入到应用中 查看导出按钮以及导出效果 扩展支持sum统计和groupsum分组 源代码打包下载 本次使用的是github上的一个开源项目Exporter 下载地址:https://github.com/iwiznia

分页-grid里面的stroe报错,求解决

问题描述 grid里面的stroe报错,求解决 如图!我要获取前台分页,然后我stroe报错了,我知道这个store没有定义的原因!但是我用var定义也报错啊!我的思路是应该是要获取grid里面的store,但是我不知道怎么获取啊!而且大家注意了,我的这个stroe是写在grid里面的,所以我var store = Ext.create('Ext.data.Store', {}会报错啊!一定是我打开的方式不对,求大伙告诉!谢谢啦 解决方案 http://zhidao.baidu.com/link

extjs中grid中含有checkcolumn,需要按条件禁用checkcolumn,如图

问题描述 extjs中grid中含有checkcolumn,需要按条件禁用checkcolumn,如图 我想实现只有一级菜单那一栏有值的时候,构建权限那一栏被禁用,求大神给个思路 解决方案 这个要参考grid的相关事件来实现

代码-GridView里点击编辑按钮,弹出窗口进行编辑,怎么传值

问题描述 GridView里点击编辑按钮,弹出窗口进行编辑,怎么传值 GridView里点击编辑按钮,弹出窗口进行编辑,怎么获得每一行的值传到编辑窗口去啊?求各位大神指教!!! 这是弹出窗口的代码: 解决方案 当前行都可以找到.行里的数据当然可以获取了. 解决方案二: 你点击编辑的时候就可以获取到 当前行的数据,和你绑定当前行的数据一样的方法啊. 解决方案三: 你点击编辑的时候就可以获取到 当前行的数据,和你绑定当前行的数据一样的方法啊. 解决方案四: <a href=""edi

extjs4.2 更新tabpanel中grid里的数据

问题描述 extjs4.2 更新tabpanel中grid里的数据 问题:a.jsp是个信息录入的页面,当我页面填完提交时,需要刷新B.jsp里的store 以下这段话报找不到getStore().麻烦大神告诉我怎么解 var grid = ext.getCmp(gridid); var store = grid.getStore(); store.load();