1. 程式人生 > >JS回撥(解決dhtmlTree非同步載入問題)

JS回撥(解決dhtmlTree非同步載入問題)

function loadTree(){
.....
tree.load("loadTree");
tree.setCheck(100,true);
}

因為load方法是非同步的,所以可能樹在沒有載入完成的時候執行tree.setCheck(100,true)方法,結果是沒有被選中;

查了好多資料最終找到解決法案:

function loadTree(){
.....
tree.load("loadTree",setC);
....
}

function setC(){
tree.setCheck(100,true);
}
dhtmlTree提供了載入xml之後,在執行方法;使用的是回撥
關於回撥:
       假設有兩個方法a(),b(),要想使在a()執行完之後執行b(),可以使用以下方法
function a(callback){
  .....//a方法的操作
   callback();
}

function b(){
 .....//操作
}

function test(){
  a(b);
}
更多連線:http://www.mahaixiang.cn/js/270.html