![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
extjs4
此间少年_hao
http://cdhr6.com
展开
-
extjs4中tree组件获取选中的节点
一个模块中由两部分组成,左边是一个tree组件,右边是一个grid,点击tree里面的节点时grid中列出相应的数据。其中最主要的就是怎么获得tree中当前选中的节点。 Ext.getCmp('tree的id').getSelectionModel().selected.items; 返回的是一个节点的数组,得到这个数组后我们就可以进行相应的操作了...2013-04-08 22:04:00 · 539 阅读 · 0 评论 -
extjs4 ajax同步加载
平时我们用Ext.Ajax.request来跟后台进行交互,通过ajax使用的是异步的的方式来传递,但是有些情况需要用同步的方式来进行Ext.Ajax.request({ async : false,//添加上这个属性就能实现同步的方式 url: 'page.php', params: { id: 1 ...2013-06-26 20:52:09 · 150 阅读 · 0 评论 -
extjs4动态加载css文件
extjs4一个比较好的地方就是所有的文件都能动态的生成,比如通过requires可以动态的加载js文件,但是有些加载的控件同样需要加载css文件。extjs4同样也给我们提供了方法:Ext.util.CSS.swapStyleSheet('文件id', 'css文件路径');// 动态加载css文件 ...2013-06-26 20:50:46 · 452 阅读 · 0 评论 -
extjs4 TreePicker下拉树用法
项目中需要用下拉树来展示数据,到网上搜了下没有想要的东西,有些是自己写的下拉树,官方的api也没有treeCombobx这样的东西,但是在extjs4源码包里面却有一个叫treePicker的东西,这正是官方提供的下拉树,但是api里面也没有使用的例子。网上也没有相关的用法,没办法,只有自己看源码慢慢摸索,好在最后终于摸索出来了。{ xtype : 'treepi...2013-05-24 21:28:15 · 409 阅读 · 0 评论 -
extjs4 tree的右键菜单
在treePanel或者treeGrid控件上面注册itemcontextmenu事件就是右键菜单'#deptGrid' : { itemcontextmenu : me.deptGrid_itemcontextmenu } deptGrid_itemcontextmenu : function(his, record, item, ind...2013-05-18 16:44:51 · 192 阅读 · 0 评论 -
extjs4 treeGrid使用
项目有一个需求是展示一个部门信息,但是这个部门下面有可能还存在子部门,用一般的trrPanel感觉效果不是太好,在官方的api上面找到treeGrid控件正好可以满足需求,但是悲催的是把api里面的代码拷到程序里面后没有效果,根据反复的修改终于可以用了:Ext.define('SimpleTasks.view.organize.DeptGrid', { ...2013-05-18 16:16:52 · 161 阅读 · 0 评论 -
store.setExtraParam的用法
项目中需要在同一个grid中转换成不同的数据,不如有一个menu,里面有“未审核”和“已审核”两个按钮,需要点击按钮后grid中出现对应的信息,之前使用的方法是当点击按钮的时候动态的创建store,然后再调用grid.reconfigure(st);的方法把数据加载到grid里面。 今天突然想起了searchField源码里面的grid.setExtraPara...2013-04-24 20:59:18 · 449 阅读 · 0 评论 -
extjs4重写验证textfidld不能输入空格
在extjs4中的表单验证里面虽然能够通过allowBlank : false配置控件不能为空,但是如果在控件里面输入空格的话就很轻松的骗过了验证,这显然是不合理的,我想到的解决办法是通过重写TextField控件的验证器再加一个判断空格的验证:Ext.apply(Ext.form.TextField.prototype, { valida...2013-04-17 21:25:17 · 455 阅读 · 0 评论 -
extjs4中htmlEncode与htmlDecode的用法
项目中有一个模块是用来管理前台的评论内容。因为前台的评论没有限制输入的内容所以有可能用户保存的是一段html代码。后台extjs4进行管理的时候如果用grid展示出来会把grid里面的布局弄乱,很不好看,这个时候就想在grid中展示评论内容的时候不要解析这个html代码,当文本一样的输出。在freemarker中只需要在展示的内容两边加上一对标签即可,所以感觉应该不是太难,不知道...2013-04-16 21:21:31 · 287 阅读 · 0 评论 -
在combobox中输入值自动补齐后名额的值
最近看extjs4的API发现combobox还有一个比较实用的功能,就是在combobox中输入比如"四川",就会自动查询当前下拉框中有的值并补齐成“四川省”,如果下拉框中的值很多的话这个方法还是比较实用。实用的方法也特别的简单,配置两个属性就行了:{ xtype : "combobox", store : sto...2013-04-14 13:38:44 · 118 阅读 · 0 评论 -
extjs4自定义vtype验证开始时间不能大于结束时间
项目中需要开始时间和结束时间的验证。因为需求涉及到两个时间,所以要有验证开始时间不能大于结束时间。之前对extjs4了解不够深入,所以这个验证是放在后台来完成,然后在前台弹出一个alert来提示用户“开始时间不能大于结束时间”。这样做依然用户体验不好,不能输入完后马上就提示用户,而且还会发送没必要的请求增加服务器负担。多个字段的验证就能很好的解决这个问题。但是实现也要比单个字段的验证要复杂些,...2013-04-10 21:46:08 · 144 阅读 · 0 评论 -
extjs4自定义表单验证
extjs4自带的表单验证已经够强大了,但是有些特殊的要求还是无法满足,比如项目中的一个文本控件要求不能输入纯数字,这个需求普通的表单验证就不行了,好在extjs4提供了自定义vtype验证,通过正则表达式来判断,写法也非常的简单: Ext.apply(Ext.form.field.VTypes, { al : function(v) { ...2013-04-09 22:58:35 · 122 阅读 · 0 评论 -
extjs4实现从页面上方弹下提示框
项目中一边的提示框都是用alert完成,现在项目有一个需求是从页面的最上方降下来一个提示框,用户不需要任何操作,一定时间后自动再收上去。之前用了很多办法,效果都不是很好,结果官方例子里面有现成的解决方法。需要从extjs4的包中找到两个依赖的文件example.css和example.js,把他们放到项目中同一层目录下面,然后在html页面引用这两个文件。然后在项目中就可以使用Ext.exam...2013-04-09 22:15:17 · 134 阅读 · 0 评论 -
extjs4 me.container.dom is undefined的解决方法
在新创建的一个模块中代码都是从其他模块中拷贝过来的,代码应该没问题,在其他模块中都能运行,但是在新建的模块中window就会出问题,按着下面的操作顺序先打开window,然后关闭,再关闭装有这个模块的tab,然后再打开这个tab,再打开最初的那个window的时候firebug就会出现me.container.dom is undefine的错误,先找了很久都没有找到出问题的原因...2013-04-08 23:27:44 · 131 阅读 · 0 评论 -
用window实现类似Ext.msg.alert()效果
公司的项目没有使用ifram,所以整个项目就一张页面,导致当使用Ext.msg.alert()后会遮罩整个界面。如果我只想遮罩右边的tab而让左边的tree依然还能用的话就只有重写一个window来代替alert。然后自己再通过mask()方法来手工控制遮罩Ext.create('Ext.window.Window', { title : title, id : id,...2013-04-08 23:08:37 · 127 阅读 · 0 评论 -
使用gzip压缩extjs文件
突然奇想想用extjs4做一个外网项目,但是extjs4依赖的文件实在太大,光ext-all.js已经压缩后的都有1.2m,做外网的话速度非常的慢,为了提高速度可以用gzip对文件再进行压缩,最后可以让1.2m的文件压缩成300多k,这样就大大的节省的时间。 1:先使用gzip压缩文件(http://download.csdn.net/detail/chen2991...2013-06-26 21:13:43 · 172 阅读 · 0 评论