2017-07-16 62 views
0

我想在OnClientClick上的VB.NET鏈接按鈕上使用Google Analytics。它不工作。我網站上的其他頁面使用與直接錨鏈接相同的功能(意味着沒有.NET控件)捕獲事件。我唯一能區分的是.NET自動編碼單引號。我被告知瀏覽器應該能夠處理這個問題,但它不適用於我的頁面。我還查看了有關.NET如何在v 4.0中開始執行此操作的所有文檔,並且沒有真正的解決方法來使其不編碼單引號。我已經嘗試了創建自定義編碼類並在web.config中添加引用的建議。這對我沒有用。我的網站上有一個空白頁面。使用谷歌分析事件單擊.NET LinkBut​​ton不起作用

有沒有其他的方式我不想成功跟蹤我的VB.NET(v 4.5)頁面上的Google Analytics click事件?

我的代碼成功添加事件背後:

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

我沒有得到我的網頁上的任何錯誤。它只是無法成功捕獲我的Google信息中心內的點擊事件。

這是頁面呈現的方式。我敢告訴瀏覽器應該能夠處理的HTML編碼...

<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> 

此外,請注意,我沒有研究其他的解決方案在那裏,尤其是這一個(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和觸發器等。 – trevoray

+0

作爲第一個近似值,請確保您的代碼在* static *頁面上工作。 –

+0

我做到了。它確實。:) – trevoray