ExtJS 的一些技巧与问题

1.修改列表(grid)store的加载url

grid.getStore().proxy.conn.url = "xxx.jsp";   

grid.getStore().reload();

2.Ext.data.StorebaseParamsStore.load({params:{}})的区别: 

baseParams里的参数是一直存在的,而params里的参数,只有load时才会传递过去,当调用reload时参数就不存在了

3.使Window以页面的相对大小显示

 document.body.clientWidth * xx%

height: document.body.clientHeight * xx%

4.Ext.FormPanel load(自动加载时的json格式{data:[{a:'a'},{b:'b'}]},其中data是规定的,不能更改名称,假如不为data的话,比如{root:[{a:'a'},{b:'b'}]},那么form 是自动加载不进去的,这时你需要在Ext.FormPanel里添加reader属性,如:

reader: new Ext.data.JsonReader({   

           totalProperty: 'totalProperty',   

           root: 'root'  

        },[   

           {name:'a'},   

           {name:'b'}   

        ])

这样做的好处是可以手动选择想加载的字段!

5.获得iframe的方法

var ifr_window = window.frames["name/id"];

6.制作表单的时候,经常form组件显示不出来或不正常其中有两个原因

1、id冲突,这个问题经常由重用引起的

2、布局form组件只有在'form'布局才显示正常,应添加layout:'form'

7.Ext.WindowGroup 负责把 window 归入一组,方便管理;

var wgroup = new Ext.WindowGroup();   

var win=new Ext.Window({

title:"窗口"

400, 

height:300,

manager:wgroup

});        

//接下来就可以利用wgroup对这一组window进行操作啦!如:隐藏全部window  

wgroup.hideAll();

8.Js 两个定时器

//将执行一次Expression   

setTimeout(Expression,DelayTime)   

//每隔DelayTime,执行一次   

setInterval(expression,delayTime)

9.刷新树的方法,只有根结点才有reload方法!

10.Ext除了用html显示图片外还可以用下面的autoCreate方式在form里显示,代码如下:

{   

 fieldLabel: '海报',   

 autoCreate:{   

     tag: "input",   

     type: "image",   

     src: "images/add.gif",   

      150,   

     height: 200,   

     autocomplete: "off"  

}

11.组件的显示和隐藏所有组件都有内置的show和hide方法。默认的css样式应用的是display: none,可以通过hideMode改变

12.浮动组件浮动组件定位于文档流之外,使用的是CSS的绝对定位属性,不受父容器的布局控制。有些组件,例如Window,默认就是浮动的,任何组件都可以通过floating属性配置成浮动的。

有几个属性是使用浮动组件时值得注意的:

draggable - 让浮动组件可以拖拽

shadow - 定制浮动组件的阴影效果

alignTo() - 让浮动组件对齐到一个特定元素

center() - 让浮动组件相对于容器居中

 

原文地址:https://www.cnblogs.com/liangxiaojie/p/3419594.html