[英]Cannot add GWT event handler
我的代碼存在問題,其中將Panel附加到DIV之后未觸發GWT事件處理程序
final FormPanel form = new FormPanel();
VerticalPanel panel = new VerticalPanel();
// Other code omitted for simplicity
DOM.getElementById("modal_panel").appendChild(panel.getElement());
// Submit button
panel.add(new Button("Submit", new ClickHandler() {
public void onClick(ClickEvent event) {
GWT.log("Submit clicked");
form.submit();
}
}));
單擊提交按鈕時,它應該執行表單提交操作,但它甚至不會在DevMode控制台上顯示GWT日志。 可能是什么原因?
直接在DOM中添加小部件不是一個好主意。 添加小部件時,GWT做很多事情。 手動將元素添加到DOM會引起一些問題。 問題之一是事件不會沉沒,處理程序將無法工作。
嘗試這樣的事情:
DOM.sinkEvent(panel.getElement(), Event.ONCLICK);
添加面板后。
如果要將面板添加到現有的HTML頁面,請嘗試:
RootPanel.get("modal_panel").add(panel);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.