2013-07-18 168 views
0

我是javascript的新手,並且正在編寫遍歷DOM。該頁面使用複選框來過濾結果。結果使用Ajax顯示。有4個級別的複選框。Javascript等待Ajax內容加載

大父母 父母 孩子
大孩子。

對於每個級別,我希望javascript可以單擊複選框並等待加載內容。

現在它檢查並遍歷整個DOM,但不會等待。

我想要的是,當元素被點擊時,只有在刷新了Ajax結果時才應該調用下一個函數determineread()。

我已經嘗試過使用setTimeOut和其他延遲方法,但他們說它是單線程的,因此無法工作。有任何想法嗎 ?

for(i = 0; i < mgtNode.length; i ++){mgtNode [i] .click();

for (j = 1; j < stateNode.length; j++) 

{ 
    stateNode[j].click(); 
    var read = decideRead(); 
    if (read) 

    { 
     alert('we have read the data, now skip further reading below'); 
     stateNode[j].click(); // we have read the data, now skip further reading below. 
     continue; 

    } 


    for (k = 0; k < inTypeNode.length; k++) { 

     inTypeNode[k].click(); 

     var read = decideRead(); 

     if (read) 

     { 

      alert('we have read the data, now skip further reading below'); 

      inTypeNode[k].click(); 
      continue; 

     } 




     for (l = 0; l < jobNode.length; l++) 

     { 
      jobNode[l].click(); 

      while (true) { 
       if (new Date() - startTime >= 5000) { 
        break; 
       } 
      } 


      saveData(); 

      jobNode[l].click(); 
     } 

     inTypeNode[k].click(); 


    } 
    stateNode[j].click(); 

} 
mgtNode[i].click(); 

}

回答