2012-01-31 8 views
3

特定のClickHandlerを持つアンカーを要素に追加する必要があります。 しかし、私のアンカーのonClick(...)メソッドは呼び出されません。要素の子を持つClickHandlerの使用

どうすれば修正できますか?

Element th = DOM.createTH(); 
Anchor link = new Anchor(); 
link.setText("my link"); 
link.addClickHandler(new ClickHandler() { 
    public void onClick(ClickEvent event) { 
     Window.alert("Clicked!"); 
    } 
}); 
th.appendChild(link.getElement()); 

答えて

7

は、私は、このような方法でそれを実行しようとしていないけど、私はこの方法で行うと、それが正常に動作しています。

final Element link = DOM.createAnchor(); 
final Element th = DOM.createTH(); 
link.setInnerText("my link"); 
link.setAttribute("style", "cursor:pointer;"); 
DOM.sinkEvents(link, Event.ONCLICK); 
DOM.setEventListener(link, new EventListener() { 
     public void onBrowserEvent(Event event) { 
      Window.alert("Clicked!");  
     } 
}); 
th.appendChild(link); 

これは役に立ちます。

+0

ありがとうございます、それは完全に正常に動作します(Element:-PのsetTextメソッドを除く) – user1180339

関連する問題