0
- 我創建了一個新的CellTable。
- 重寫onBrowserEvent2來處理鼠標事件。
- 向表中添加一個新元素。
不幸的是,事件監聽器沒有處理添加的元素。它只處理最初的元素。GWT事件不適用於運行時添加的元素
table = new CellTable<Contact>() {
public void onBrowserEvent2(Event event) {
Element tr = Element.as(event.getEventTarget());
boolean gotIt = false;
while (!gotIt && tr != null) {
if (!tr.getTagName().equals("TR")) {
tr = tr.getParentElement();
continue;
}
gotIt = true;
}
if (tr == null)
return;
tr = Element.as(tr.getChild(1));
Element out = DOM.createDiv();
out.setInnerHTML("<a href='xxx'>Edit contact</a> | <a href='xxx'>Add visit plan</a> | <a href='xxx'>New visit</a>");
switch (DOM.eventGetType(event)) {
case Event.ONMOUSEOVER:
tr.appendChild(out);
break;
case Event.ONMOUSEOUT:
tr.getChild(1).removeFromParent();
break;
}
}
};
當你說「不工作」,究竟是什麼意思呢?請你能更具體。 – 2012-08-09 14:35:04