這不是一個AJAX請求/響應回調問題...如何在另一個函數(非AJAX)在Dojo中完成後調用函數(非AJAX)?
我正在使用Dojo 1.5構建網格。我正在嘗試使用函數dojo.connect展開/合同按鈕。我的問題是grid.startup()方法在創建實際的DOM節點之前似乎需要一段時間,所以當我調用dojo.query時,我不想要連接事件和處理程序。
我已經在由dojo.addOnLoad()調用的init()方法內部創建了網格。我有connectExpandos()方法通過dojo.connect(「init」,connectExpandos)連接到init()。這執行得很好,但我需要setTimeout()在一個while循環內等待grid.startup()完成...
任何人都知道有更好的方法來做到這一點?也許一個grid.startup()回調我可以掛鉤?感謝您的任何想法。 -robbie
我發現DataGrid中被稱爲「postCreate」的方法,即根據文檔「覆蓋dijit._Widget,dojox.grid._Grid 小部件的dom被設置後調用「。但是,當我在DataGrid構造函數中包含我的connectExpandos方法時,我得不到任何結果(通常很多時沒有返回行)......也許我需要先在我的父級方法中調用? – Robbie 2010-09-16 19:08:41
嘗試擴展DataGrid中的postCreate方法繼續給我沒有結果...看起來像我堅持可靠的老setTimeout ... – Robbie 2010-09-16 21:43:30
你可以覆蓋postCreate,只要確保調用「this.inherited(arguments);」在添加您的代碼之前。 – JasonStoltz 2010-09-21 18:42:01