2014-01-17 51 views
0

我在uibinder中添加了所有輸入元素,當我嘗試訪問onbind()中的DOM.getElementById()時,它返回null。GWTP DOM.getelementbyid()和Document.get()。getelementbyid()返回null

試圖調用DOM.getelementbyid()在OnReveal(),它返回一個元素,但是,Textbox.wrap()拋出

java.lang.AssertionError: A widget that has an existing paent widget may not be added to the detach  list 
at com.google.gwt.user.client.ui.RootPanel.detachOnWindowClose(RootPanel.java:136) 
at com.google.gwt.user.client.Textbox.wrap(Textbox.java:69). 

但是,沒有什麼幫助。請幫我解決這個問題。什麼地方出了錯? NO JSNI

謝謝, Bennet。

回答

0

DOM.getElementById僅當請求的小部件實際上連接到DOM時才能使用。在這種情況下,它可能不會連接到DOM。要做到這一點叫你需要從onLoad()

文檔調用方法:

protected void onLoad() 
This method is called immediately after a widget becomes attached to the browser's document. 

樣品:

@Override 
void onLoad() 
{ 
    DOM.getElementById("id"); 
} 
相關問題