Javascript/Adobe DTM:跟踪复选框只单击一次

Javascript/Adobe DTM:跟踪复选框只单击一次,javascript,dom-events,adobe,event-tracking,Javascript,Dom Events,Adobe,Event Tracking,首先,像往常一样,如果这个答案存在,我很抱歉,但是我搜索了,没有找到我正在寻找的答案 我试图只跟踪一次输入复选框上的操作,也就是说,如果我有一个复选框列表,我只想在用户单击它一次时跟踪它,因此即使他们取消选择一个复选框,他们也只跟踪第一次单击 我知道有一种方法可以通过querySelector()检查JS中是否单击了复选框。输入类型调用,但我不知道如何使整个循环只触发一次跟踪事件,而不管用户切换了多少次 考虑以下标记: 应用程序 附加事件侦听器,并在触发时将其删除 function addE

首先,像往常一样,如果这个答案存在,我很抱歉,但是我搜索了,没有找到我正在寻找的答案

我试图只跟踪一次输入复选框上的操作,也就是说,如果我有一个复选框列表,我只想在用户单击它一次时跟踪它,因此即使他们取消选择一个复选框,他们也只跟踪第一次单击

我知道有一种方法可以通过
querySelector()检查JS中是否单击了复选框。输入
类型调用,但我不知道如何使整个循环只触发一次跟踪事件,而不管用户切换了多少次

考虑以下标记:

  • 应用程序
  • 附加事件侦听器,并在触发时将其删除

    function addEventListenerOnce(target, type, listener) {
        target.addEventListener(type, function fn(event) {
            target.removeEventListener(type, fn);
            listener(event);
        });
    }
    
    addEventListenerOnce(document.getElementById("edit-category-title-app"), "change", function (event) {
        alert("You'll only see this once!");
    
        // DTM call here
    });
    

    请参阅此

    可能的重复项,因为我问题的krux是如何在DTM而不是页面脚本中实现。如果发现相同的问题(从中复制答案),则应将其标记为重复项。谢谢,但我不认为这是重复的,因为我真正的问题是如何在DTM(一个标记管理系统)中实现这一点,而不是在页面脚本中实现。我认为关键是附加事件处理程序客户端,并触发DTM接收的自定义事件。我不认为只有DTM本身才能实现这一点