2017-07-16 13 views
0

OnClientClickのVB.NETリンクボタンでGoogle Analyticsを使用しようとしています。それは動作していません。私のサイトの他のページでは、ストレートアンカーリンク(.NETコントロールなし)と同じ機能を使用してイベントをキャプチャします。私が知ることができる唯一の違いは、.NETが一重引用符を自動的にエンコードすることです。私はブラウザがこれを処理できるはずだと言われていますが、それは私のページでは機能しません。私は、.NETがv 4.0でこれをやり始めた方法に関するすべてのドキュメンテーションを見てきましたが、一重引用符をエンコードしないようにするための実際の回避策はありません。カスタムエンコーディングクラスを作成し、web.configで参照を追加することで、そこに提案を試みました。それは私にとってはうまくいかなかった。私は自分のサイトに空白のページがあります。Google Analyticsイベントの使用.NET LinkBut​​tonが動作しない

私のVB.NET(v 4.5)ページでGoogleアナリティクスのクリックイベントを正常にトラッキングする方法はありませんか?

私は背後にあるコードで正常にイベントを追加している:

lnkViewAll.OnClientClick = "ga('send', 'event', 'View All Awards', 'click', 'Landing Page - Awards');" 

私は自分のページ上のすべてのエラーを得ることはありません。 Googleダッシュボードでクリックイベントを正常に取得できません。

これはページのレンダリング方法です。これは私が

再び
<a onclick="ga(&#39;send&#39;, &#39;event&#39;, &#39;View All Awards&#39;, &#39;click&#39;, &#39;Landing Page - Awards&#39;);" id="lnkViewAll" class="button-text" href="javascript:__doPostBack(&#39;lnkViewAll&#39;,&#39;&#39;)">View All Awards</a> 

、注意してください...ブラウザがHTMLエンコードを処理できる必要があります聞いています、私は研究そこに他の解決策、特にこの1(https://forums.asp.net/p/1554455/3818604.aspx)やったとソリューションはありませんでした提供しました私のために働く。これを実現させる他の創造的な解決策はありますか? VB.NETとGoogle Anaylticsのクリックイベントを使用している人がいると思います。

答えて

0

クリックするとフォームPOSTが生成され、すぐにページがアンロードされるので、実行する時間がありません。ga('send'...代わりにサーバ側のAnalyticsイベント(lnkViewAll_Clickハンドラ内)を処理します。 (VBで)このような何かを:

ScriptManager.RegisterStartupScript(Me, Me.GetType(), "gaEvent", "ga('send', 'event', 'View All Awards', 'click', 'Landing Page - Awards');", True) 

別のオプションは、あなたのLinkButtonUpdatePanel内に配置することです。

+0

Tks Alex、lnkVIEWALL_Clickイベントハンドラにコードを挿入しましたが、その機能はGoogle Anaylticsによって取得されませんでした。私はこれをUpdatePanelやTriggersなどにどうやって適切に適合させるかはわかりません。 – trevoray

+0

最初の近似として、* static *ページでコードが動作することを確認してください。 –

+0

しました。します。:) – trevoray

関連する問題