Ich habe ein HTML-Dokument. In diesem Dokument gibt es ein Element (wie button, div, a) mit einer ID. Ich weiß, ich kann verwenden:
%Vor%um das erforderliche Element in der HTML-Datei zu finden. Wie kann ich einen Click-Handler hinzufügen? ClickHandlers scheinen nur in der Button-Klasse verfügbar zu sein.
Danke
Wenn Sie versuchen, ClickHandler
zu einem <button>
hinzuzufügen, können Sie dies mit Button.wrap()
.
Für ein <a>
können Sie Anchor.wrap()
( Anchor
s haben nur ClickListener
s, nicht ClickHandler
s ... noch)
Für ein <div>
können Sie Label.wrap()
( Label
s sind nur <div>
s).
Vorschlag: Versuche zu lernen, wie man UiBinder benutzt (hinzugefügt in GWT 2.0).
In Ihrem Fall hätten Sie Folgendes tun können:
IhreView.ui.xml
%Vor%yourView.java
%Vor%Mit "@UiHandler" können Sie einen beliebigen Handler hinzufügen, den das Widget unterstützen kann (implementieren Sie Has **** Handler). Das Hinzufügen eines anderen Elements zu dieser Struktur ist einfach und schnell und Sie können jedem beliebigen Handler hinzufügen. @UiField erstellt eine Variable, die die Instanz des Elements enthält, das in Ihrer Klasse beliebig manipuliert werden kann.
Ein anderer Vorschlag - benutze GQuery. Es macht es einfach, einen einfachen Ereignis-Listener an das DOM anzuhängen, ohne die zusätzlichen Elemente zu erstellen, die GWT-Widgets oft ausführen:
%Vor%Hier finden Sie weitere Informationen: Ссылка
Es ist eine Schande, dass es keinen fortschrittlicheren GWT-Code gibt. IMHO, CSS / HTML machen gute Arbeit bei Design / Markup - es ist nur das Javascript, das ich ersetzen möchte.
Tun Sie es einfach, indem Sie einen Ereignis-Listener einstellen.
%Vor%Tags und Links gwt