【问题标题】:Using Google Analytics Event Click on .NET LinkButton not working使用 Google Analytics 事件单击 .NET LinkBut​​ton 不起作用
【发布时间】:2017-07-16 19:15:07
【问题描述】:

我正在尝试在 OnClientClick 上的 VB.NET 链接按钮上使用 Google Analytics。它不工作。我网站上的其他页面使用具有直接锚链接的相同功能(意味着没有 .NET 控件)确实捕获了该事件。我能说的唯一区别是 .NET 自动对单引号进行编码。我被告知浏览器应该能够处理这个问题,但它在我的页面上不起作用。我还查看了有关 .NET 如何在 v 4.0 中开始执行此操作的所有文档,并且没有真正的解决方法可以让它不编码单引号。我已经尝试了创建自定义编码类并在 web.config 中添加引用的建议。那对我不起作用。我的网站上有一个空白页面。

还有其他我没有想到的方法来成功跟踪我的 VB.NET (v 4.5) 页面上的 Google Analytics(分析)点击事件吗?

我在后面的代码中成功添加了事件:

  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 点击事件。

【问题讨论】:

    标签: asp.net vb.net google-analytics


    【解决方案1】:

    您的点击产生表单POST 请求并且页面被立即卸载,因此ga('send'... 没有时间执行。而是在服务器端处理 Analytics 事件(在 lnkViewAll_Click 处理程序中)。像这样的东西(VB):

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

    另一种选择是将LinkButton 放入UpdatePanel

    【讨论】:

    • Tks Alex,我将您的代码放在了我的 lnkVIewALL_Click 事件处理程序中,Google Anayltics 未捕获该函数。我不确定如何正确地将其放入 UpdatePanel 和 Triggers 等中。
    • 作为第一个近似值,请确保您的代码在 static 页面上工作。
    • 我做到了。确实如此。:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多