4

ハイパーリンクをボタンのように動作させたい (Click イベントにのみ応答する) のですが、クリックすると履歴トークンが自動的に変更され、アプリケーションの履歴メカニズムが台無しになります。履歴トークンを変更しないように、ハイパーリンクの既定の動作を抑制する方法はありますか? targetHistoryToken を null に設定しようとしましたが、うまくいきませんでした。

ありがとう、

4

5 に答える 5

4

Anchor代わりに使用してください。

のJavaドキュメントがHyperlink言うように:

履歴システムと対話せずに HTML ハイパーリンク ( タグ) が必要な場合は、代わりに Anchor を使用してください。

于 2010-01-10T15:38:54.233 に答える
1

これを行う最も簡単な方法は、Composite を拡張<a> </a>し、HTML ウィジェットとしてレンダリングする独自のクラスを作成することです。私はこれと同じ問題を抱えていましたが、それが私がそれを回避した方法です。

于 2009-05-06T01:30:59.227 に答える
1

アンカーから href="" を削除するだけです。

<g:Anchor ui:field="clickField">Click here</g:Anchor>
于 2012-04-03T16:31:39.760 に答える
0

このクラスを作成しました

import com.google.gwt.user.client.ui.HTML;

public class HyperlinkWithoutHistoryToken extends HTML {
    public HyperlinkWithoutHistoryToken(String html, boolean wordWrap) {
        super("<a href=\"javascript:undefined;\">" + html + "</a>", wordWrap);
    }
    public HyperlinkWithoutHistoryToken(String html) {
    super("<a href=\"javascript:undefined;\">" + html + "</a>");
    }
}
于 2009-09-19T20:35:39.763 に答える