国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

ExtJS 刷新后如何默認(rèn)選中刷新前最后一次選中的節(jié)點

2024-05-06 16:03:38
字體:
供稿:網(wǎng)友
這篇文章主要介紹了ExtJS 刷新后如何默認(rèn)選中刷新前最后一次選中的節(jié)點,需要的朋友可以參考下

在對樹節(jié)點進(jìn)行操作后往往需要進(jìn)行reload操作刷新一下樹,但是很多業(yè)務(wù)都需要在樹形刷新后默認(rèn)選中最后一次選中的節(jié)點。這樣就必須先保存前一次選中節(jié)點的信息,在reload之后再次通過節(jié)點的信息進(jìn)行expand逐層展開到這個節(jié)點上。

查詢了好久終于找到一個可行的方案,就是通過節(jié)點的path來記錄節(jié)點的位置信息,然后通過path從root節(jié)點開始逐層展開,直到最后一個節(jié)點。

完成的代碼如下:
首先是extjs3.x版本中的方法:

復(fù)制代碼 代碼如下:


//獲取選中的節(jié)點
var node = tree.getSelectionModel().getSelectedNode();
if(node == null) { //沒有選中 重載樹
tree.getRootNode().reload();
} else { //重載樹 并默認(rèn)選中上次選擇的節(jié)點
var path = node.getPath('id');
tree.getLoader().load(tree.getRootNode(),
function(treeNode) {
tree.expandPath(path, 'id', function(bSucess, oLastNode) {
tree.getSelectionModel().select(oLastNode);
});
}, this);
}


跟Extjs3.0不同Extjs4.2的寫法如下

復(fù)制代碼 代碼如下:


idPath = selNode.getPath("id");
tree.getStore().load({
node: tree.getRootNode(),
callback: function () {
tree.expandPath(idPath, 'id');
}
});


需要注意的是后臺返回的樹的json數(shù)據(jù)時節(jié)點必須包含id屬性,原本我沒有這個屬性,但是我把getPath方法中的參數(shù)改成其他的一個屬性。事實證明這樣是達(dá)不到效果的,最后在json中添加了id屬性才成功的。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 老河口市| 无棣县| 托克托县| 宁阳县| 比如县| 达州市| 和田市| 武胜县| 射洪县| 库车县| 上林县| 柳州市| 太湖县| 威信县| 岳池县| 射阳县| 杭锦后旗| 二手房| 田阳县| 长海县| 榆林市| 鹿泉市| 西华县| 嘉荫县| 钦州市| 林甸县| 崇仁县| 保靖县| 普兰县| 吕梁市| 右玉县| 彰化市| 昌平区| 洱源县| 循化| 获嘉县| 南澳县| 福海县| 西丰县| 靖宇县| 靖宇县|