为什么这个事件(onclick)不会开火?

时间:2011-03-28 09:47:11

标签: gwt

UI:

  <div class="scroll" ui:field="mainContainer">
                <ul ui:field="liContainer">
                </ul>
    </div>

代码:

LIElement li = Document.get().createLIElement();
AnchorElement a = Document.get().createAnchorElement();
a.setAttribute("href", "#");
li.appendChild(a);
Image img = new Image(fsd.getImgUrl());
img.addClickHandler(new ClickHandler() {
    @Override
    public void onClick(ClickEvent event) {
        Window.alert("Hello, again");
    }
});
SpanElement span = Document.get().createSpanElement();
span.setInnerText(fsd.getName());
a.appendChild(img.getElement());
a.appendChild(span);
liContainer.appendChild(li);

注意:

@UiField
UListElement liContainer;

1 个答案:

答案 0 :(得分:2)

必须将Image添加到父Widget。通过将图像元素直接附加到DOM,您可以绕过GWT的事件调度系统。