1

jQuery を使用して、GWT によって生成されたアンカーのクリック イベントを削除するにはどうすればよいですか? たとえば、次のような GWT コードがあります。

Anchor a = new Anchor("name")
a.addClickHandler(new ClickHandler(){
    public void onClick(ClickEvent event) {
        //do something
    }
});

したがって、次のような HTML コードが生成されます。

<a tabindex="0" class="gwt-Anchor" href="javascript:">name</a>

IE以外では、これを使用できます:

$('a.gwt-Anchor').attr("onclick",function() {return false;});

クリック イベントを無効にしますが、これは IE では機能しません。メソッドを使用しようとしてunbind()いますが、どちらも機能しません。これを行う方法はありますか?

4

2 に答える 2

2

代わりに、Java ソース内でこのロジックを構築する方法はありますか?

GWT の目的の 1 つは、開発者をブラウザー側の実装の詳細に対処することから解放することだと思います。しかし、GWT で生成されたクライアント側コードを変更することで、文書化されていない GWT の動作とかなり強い結合が作成されます (たとえば、GWT の次のリリースで、ほとんどの a タグにクラス 'GWT-SimpleAnchor' が使用されている場合など)。または、IE 7.0 を生成する方法を変更するが、IE 8.0 を生成しないと言う...)

于 2009-09-25T01:18:26.730 に答える
0

ここで言及されている Event オブジェクトのメソッドを試しましたか: http://docs.jquery.com/Events/jQuery.Event ? preventDefault()有望に見えます。

興味があれば、 GWTClickEventにも機能があります:)(これはGWTで行う必要があるという点でmjvに同意します-UI効果、AJAXプッシュなどの複雑なものには外部JSライブラリのみを使用します)。preventDefault()

于 2009-09-30T00:14:16.887 に答える