javascript - javascript/ajax 中的 Google Analytics 目标跟踪

标签 javascript ajax google-analytics event-tracking

我的网站页面上有一个基于 javascript/ajax 的联系表单。如果人们点击发送表单,我希望 Google Analytics 记录这次点击。我为此设定了一个目标,但由于某种原因我无法让它发挥作用。有什么帮助吗?

表单的代码是:

        <form id="footer_quick_contact_form" name="footer_quick_contact_form" class="quick-contact-form" action="includes/quickcontact.php" method="post">
          <div class="form-group">
            <input id="form_email" name="form_email" class="form-control" type="text" required="" placeholder="E-mail">
          </div>
          <div class="form-group">
            <textarea id="form_message" name="form_message" class="form-control" required placeholder="message" rows="3"></textarea>
          </div>
          <div class="form-group">
            <input id="form_botcheck" name="form_botcheck" class="form-control" type="hidden" value="" />
            <button type="submit" class="btn btn-default btn-transparent text-gray btn-xs btn-flat mt-0" data-loading-text="One moment please...." onClick="ga('send', 'event', { eventCategory: 'Contact', eventAction: 'ContactRequest'});">Verstuur nu!</button>
          </div>
        </form>

        <!-- Quick Contact Form Validation-->
        <script type="text/javascript">
          $("#footer_quick_contact_form").validate({
            submitHandler: function(form) {
              var form_btn = $(form).find('button[type="submit"]');
              var form_result_div = '#form-result';
              $(form_result_div).remove();
              form_btn.before('<div id="form-result" class="alert alert-success" role="alert" style="display: none;"></div>');
              var form_btn_old_msg = form_btn.html();
              form_btn.html(form_btn.prop('disabled', true).data("loading-text"));
              $(form).ajaxSubmit({
                dataType:  'json',
                success: function(data) {
                  if( data.status == 'true' ) {
                    $(form).find('.form-control').val('');
                  }
                  form_btn.prop('disabled', false).html(form_btn_old_msg);
                  $(form_result_div).html(data.message).fadeIn('slow');
                  setTimeout(function(){ $(form_result_div).fadeOut('slow') }, 6000);
                }
              });
            }
          });
        </script>

如您所见,我向发送按钮添加了单击事件。在谷歌分析中,我通过转到管理>目标>新目标>自定义单选按钮>下一步创建了一个目标。我为目标命名,选择“事件”单选按钮并填写以下字段:

类别:联系方式 行动:联系请求 标签: 空 值:空

我以为我已经修复了它,但直到现在我还无法跟踪 GA 中的任何结果。有什么建议吗?

最佳答案

阅读您的评论后,问题似乎是您在点击事件处理程序中使用了错误的语法。

您正在调用 ga() 函数,该函数是 Universal Analytics 代码的一部分,一段时间以来该函数已被 gtag.js 取代。

我通常不使用 gtag.js(我更喜欢使用 Google 跟踪代码管理器),但是 according to the documentation正确的调用如下所示:

gtag('event', 'contact_request', { // second parameter is event action
  'event_category': 'contact', 
  'event_label': '',
  'value': 0
});

(实际上,如果不需要标签和值,可以省略它们)。

关于javascript - javascript/ajax 中的 Google Analytics 目标跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53747689/

相关文章:

javascript - jQuery JSON 解析 - 对象元素

javascript - Ajax使用session时不上传文件

javascript - Google-Analytics JS(或其他第三方 JS)可以重命名并且仍然有效吗?

asp.net 网络统计 - 谷歌分析

javascript - 使用 Jest 测试 firebase 云消息传递

javascript - 为什么 Javascript 小书签包含在闭包中?

php - Laravel,从 jquery 中的复选框获取值

javascript - 使用 onclick 从输入中获取值

javascript - 如何在文本框输入时更改文本框的颜色?

google-analytics - Google 跟踪代码管理器未收集元素 ID?