javascript - Google 标签 - 每次点击时 Javascript 变量值都会发生变化

标签 javascript google-tag-manager

第一次使用 Google 跟踪代码管理器。我有一个基于按钮类的点击事件触发器,但它会在每次点击时执行。

我的变量 {{bookingUnit}} 从页面上的 HTML 中获取的文本获取其值。它是一个自定义 Javascript 变量(并返回正确的值):

function() {
    return $({{Click Element}}).closest('table')).find('td.rnc').text();
}

我必须检测按钮点击,该按钮在(第三方系统的)页面上定义为:

<input type="submit" name="ctl00$plcBody$BookingFormGrid$ctl16" value="BOOK NOW" onclick="$('form').attr('action', 'DetailsEntry.aspx?bfid=c5efdee5-7280-4593-8256-564e9b7ac01a&amp;bfpid=8072faaa-c89f-4a63-be19-e54a91f0f1a0&amp;bfrtid=3d6e96c3-e557-4f85-97d1-c750787dc6d8&amp;arr=2019-03-07&amp;nts=3&amp;a=1&amp;c=0');WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$plcBody$BookingFormGrid$ctl16&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, false))" class="btn btn-primary bnow">

我有一个触发器如下:

Type: Click - All Elements
Fires On - Some Clicks

Click Classes - equals - btn btn-primary bnow
Click Element - equals - input

无论我在页面上点击什么地方,我都会看到事件触发:

gtm.click

但是我可以看到每次更新变量的值(因此它似乎忽略了我的 Click Classes 触发条件,并且仅在按下按钮时更新)。

我错过了什么?谢谢。

更新:使用 info from this forum ,我像这样改变了触发器:

Click Element - matches CSS selector - .btn .btn-primary .bnow

但是,通过单击页面上的任意位置,变量仍然会更新。

最佳答案

听起来您的容器中有一个处于事件状态的Click - All Elements 触发器。每次单击鼠标都会触发此操作。每次触发触发器时,所有变量都会在那时重新评估。因此,如果您不使用Click - All Elements触发器,最好的办法是停用它。

编辑:

  • 转至变量 > 配置内置变量
  • 选择以下选项:点击元素、点击类、点击 ID、点击目标、点击 URL、点击文本
  • 转至触发器 > 新建
  • 触发器类型:点击 - 所有元素
  • 此触发器在某些点击时触发
  • 点击类 匹配 CSS 选择器 .btn.btn-primary.bnow

关于javascript - Google 标签 - 每次点击时 Javascript 变量值都会发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55036088/

相关文章:

javascript - 在 Javascript 中使用变量拆分和连接

javascript - 基于类名并在历史更改时推送的 Google 标签管理器变量

google-analytics - 多个 Universal Analytics 和 Google Tag Manager 自动事件和跨域跟踪

ios - 源 : unbound variable error when using Cocoapods for Firebase

javascript - UA 通过 GTM 宏 : ga. getAll()[0].get ('clientId' ) - ga 未定义

javascript - Javascript 处理的 draw() 函数

javascript - HTML 注释(选择、突出显示、删除格式)

javascript - 使用jquery限制一个文本域

Javascript RegExp 测试失败

google-analytics - 当我无权访问跟踪代码管理器网站时,在 Google 跟踪代码管理器中实现自定义事件