重谈ExtGrid 扩展行自动展开(一)(expanded row 默认展开)
很長一段時間不碰JS,實際上心里也非常討厭編碼--這點不像團隊中另外兩個兄弟(兩人是瘋狂的javascript writer)。
今天在做grid時,遇到了須在gird里加入一個row expander,且這個expander要默認展開。按以往經驗,第一想到的是:在grid 上加入一個plugins.但加完后發現這些expander沒辦法自動展開。
我在網上搜了一些前人的解決辦法,有人提到:在grid的listener上的事件上加入(好像是這種寫,不記得了,大概像這種):listenners:{'viewready':function(g){
foreach(v r in g.veiw.getRows())
{
r.toggleRow();
}
}};
但我在查'viewready'時,文檔是這么描述:Fires when the grid view is available (use this for selecting a default row). 這句話的意思也就意味著假如我沒有設置一條被選中的默認記錄,此事件就不會被觸發。
心想,還是查extjs doc吧。當我查閱資料時,發現了grid有這么一個屬性:viewConfig。
按字面意思:展現界面某些屬性是可設置的,因此,我作出以下調整:
?
_canBeBroadedGrid?=?Ext.ComponentMgr.create(Ext.apply({????????????????width:?'auto',
????????????????viewConfig:?{
????????????????????forceFit:?true,
????????????????????enableRowBody:?true,
????????????????????getRowClass:?function?(record,?rowIndex,?p)?{
????????????????????????p.body?=?String.format('<div?class="contacterInfo">提供人:<span?class="author">{1}?{2}</span></div><p?class="rowExpandContent">{0}</p>',?record.data.Content,?record.data.Contacter,?record.data.ContacterPhone);
????????????????????????return?'x-grid3-row-expanded';
????????????????????}
????????????????},
????????????????width:?450,
????????????????height:?450,
????????????????region:?'west',
????????????????xtype:?'gridPanel',
????????????????columns:?_getColumns(),
????????????????sm:?new?Ext.grid.CheckboxSelectionModel({?singleSelect:?true?}),
????????????????fields:?_getFields(),
???????????????....????????????})); 即通過: ?viewConfig:?{
????????????????????forceFit:?true,
????????????????????enableRowBody:?true,
????????????????????getRowClass:?function?(record,?rowIndex,?p)?{
????????????????????????p.body?=?String.format('<div?class="contacterInfo">提供人:<span?class="author">{1}?{2}</span></div><p?class="rowExpandContent">{0}</p>',?record.data.Content,?record.data.Contacter,?record.data.ContacterPhone);
????????????????????????return?'x-grid3-row-expanded';
????????????????????}
????????????????}就可以達到默認展開的目,用不著在viewready事件上做文章。
?
轉載于:https://www.cnblogs.com/Breaker/archive/2011/05/03/2035603.html
總結
以上是生活随笔為你收集整理的重谈ExtGrid 扩展行自动展开(一)(expanded row 默认展开)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用kinect检测任意平面
- 下一篇: 设计模式学习-Composite(组合模