0

ページを読み込まず、クライアント側のスクリプトをトリガーするだけのアンカーを作成したいと考えています。

私の問題は、作成したアンカーがクリックされると常に現在のページをリロードすることです (ただし、最初に addClickHandler を介して ClientHandler コードを実行します)。これがアンカーの作成方法です。

app.createAnchor(text, '').setTarget('_self');

これにより、空白の 'href' を含む html が生成されます。「#」の href も試してみましたが、「http://www.google.com/url?q=%23&sa=N&usd=2&usg=AFQjCNGs0Cz4Vz7tdafpLWloZGOjmdJv4Q」のような href で html になり、リダイレクトループ。(Hyperlink ウィジェット (および InlineHyperlink) は私が望むことを行うかもしれないと思っていましたが、非推奨になっただけでなく、実際には削除されました。)

UiService の Anchors でそれができるかどうか疑問に思っただけです - 方法が見つかりません。(私自身の回避策のために回答済みとして投稿しましたが、アンカーウィジェットを使用して解決策を持っている人から聞いてみたいと思います)

4

1 に答える 1

1

許容できる回避策は、アンカーの代わりにラベルを作成し、スタイルを設定して、標準の矢印カーソルではなく「ポインター」ハンド マウス アイコンを取得することです。

app.createLabel(text).setStyleAttributes({cursor: 'pointer'});

別の回避策は、単純な Javascript を使用して、代わりに HtmlService でコーディングすることです (JQuery もうまく機能します)。href を '#' に設定し、onclick ハンドラーを追加します。

于 2012-12-19T16:18:59.903 に答える