ExtJs疑难杂症之菜单图标移位问题
作者:GDNPC 日期:2009-06-05
ExtJs疑难杂症之GridPanel单元格不能选中复制问题
作者:GDNPC 日期:2009-06-05
轻松掌握ExtJs系列教程二:使用Ext.Button组件
作者:GDNPC 日期:2009-05-24
轻松掌握ExtJs系列教程一:写在使用ExtJs之前
作者:GDNPC 日期:2009-05-22
使用ExtJs已经一个多月了,先简单说一下我的使用感受。
之所以选择使用ExtJs是被它的GridPanel所吸引,刚好近期有个任务需要使用复杂的Grid,因此没多想就选择了ExtJs。
刚开始一切很顺利,网上例子很多,东挪西凑一个漂亮的grid就出来了。但随着不断深入,麻烦也越来越多,在很多细节上,用ExtJs的确不是很方便,例如layout就是一个难点,我都现在都没有做出完美的效果。那段时期真的非常痛苦,很多次真想用传统的方法推倒重来。但ExtJs GridPanel的丰富功能的确令人难以割舍,况且我不想放弃这个学习ExtJs的大好机会,这次放弃了,以后相信就没多大机会能用上了。
做开发就和长跑一样,中间总会有段觉得辛苦而想放弃的阶段,但一旦撑过去,一切就显得海阔天空,游刃有余。以下是我做的grid,一行html都没写,全部用js来实现,一共写了1500多行js代码,几乎所有功能都用上了,碰到很多疑难杂症也一一解决,具体我已记录在《ExtJs疑难杂症》系列文章里。
Tags: extjs js javascript 技术
ExtJs疑难杂症之ComboBox选项filter问题
作者:GDNPC 日期:2009-05-12
如果有多个同类型的ComboBox,个人觉得最好的加载方法是加载一个store,然后通过filter方法筛选出需要的选择项,这样切换ComboBox就不用请求单独的store了。但这里似乎又有点问题。
版本:2.2
症状:
如以下代码所示,store执行filter后ComboBox的选项并不会改变,但打印store.getCount()时发现选项数目已经发生变化,只是ComboBox没展示出来。
- var comboBoxFilter = new Ext.form.ComboBox({
- store: basekeyStore,
- displayField: "basekeyName",
- valueField: "basekeyID",
- typeAhead: true,
- mode: 'local',
- forceSelection: true,
- triggerAction: 'all',
- selectOnFocus:true,
- lazyRender:true
- });
- basekeyStore.filter("basekeyTypdID", "3");//使用filter
Tags: extjs javascript 技术 js
ExtJs疑难杂症之formPanel动态添加FieldSet导致验证失效
作者:GDNPC 日期:2009-05-08
这个标题非常拗口,但应该能帮助遇到同样问题的朋友baidu到这里。baidu+google了一下午都没找到答案,发这文章时国内似乎还没有人碰到这个问题,至少没有发相关的帖子出来。但国外被这螃蟹噎到的ExtJs用户已经数不胜数了,还是google见多识广啊~
版本:2.2打防memory leak补丁版
症状:
当使用add方法在formPanel中动态添加FieldSet时,尽管控件重绘正常,但form.isValid()只会返回true,打印form.items.length时也显示没有新的组件添加进来,但实际上无论render还是submit都是正常的,唯独validate不正常。问题代码如下:
- //Create the Form
- testForm = new Ext.form.FormPanel({
- name: "form1",
- frame:true,
- width: 350,
- items: [{
- xtype: "textfield",
- name: "nom",
- fieldLabel: "nom",
- allowBlank: false
- }]
- });
- //Render the form
- testForm.render(Ext.get('idForm'));
- //Create the fieldset
- testFieldSet = new Ext.form.FieldSet({
- name: 'testFieldSet',
- autoHeight: true,
- items: [{
- xtype : "textfield",
- name : "testtextvalid",
- fieldLabel: "testDyn",
- allowBlank: false
- }]
- });
- testForm.add(testFieldSet); //add the fieldset to the formpanel
- testFieldSet.doLayout();
- testForm.doLayout();
Tags: javascript js extjs 技术










