2017-07-16 63 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