我需要将带有 clickHandler 的 Anchor 添加到 ListGridRecord。Click to Anchor 应该调用该函数(向 ListGrid 添加更多行)。我可以用 href 编写 Anchor:
private void addAnchorToRecord(ListGridRecord rec) {
String img = "<img src='pict/Plus.png'/>";
Anchor myAnchor = new Anchor(img, true, "example.html");
String value = myAnchor.toString();
rec.setAttribute("versions", value);
}
但是这段代码:
private void addAnchorToRecord(final ListGridRecord rec) {
String img = "<img src='pict/Plus.png'/>";
Anchor myAnchor = new Anchor(img, true);
myAnchor.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
addExtraRows(rec);
}
});
String value = myAnchor.toString();
rec.setAttribute("versions", value);
}
不起作用。我看到图像,但点击后没有任何反应。在第二种情况下
value = "<a href="javascript:;" class="gwt-Anchor"><img src="pict/Plus.png"></a>"
我认为在这个地方我丢失了有关 clickHandler 的信息。在这种情况下如何成功添加 ClickHandler?
编辑
我使用了 LinkItem:
private void updateVersions(final ListGridRecord rec) {
LinkItem linkItem = new LinkItem("link");
linkItem.setTitle("LinkItem");
linkItem.setLinkTitle("Click Me");
linkItem.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
showPreviousVersions(rec);
}
});
rec.setAttribute("versions", linkItem);
}
然后在我的牢房里只有“[object Object]”
我需要的功能:将属性设置为 ListGridRecord,它具有图标和 clickHandler。