如何正确检索GA中的dataLayer值

时间:2017-06-19 12:25:22

标签: google-analytics google-tag-manager google-datalayer

我在为GA审核活动时遇到了问题。在GA中, eventLabel 似乎发现我的dataLayer变量有任何问题,因为其中一些变量被读作“未定义”:

enter image description here

我一直在研究代码中的变量,但它们似乎很好。突然我在检查我的GTM值时发现了这个:

enter image description here

标记字段用两行写成,显然是“破碎”了!我认为这是因为我的观众存在某种问题,但我想知道是否这就是我的GA值被打破的原因......

我检查了长度,并且,当我阅读Google文档时,“eventLabel”标记可以是500字节长:

enter image description here

我的文本长度不到500字节...那么,我的GA值有什么问题?这个“破碎的字符串”问题是GA中错误读取值的原因吗?

编辑:这是javascript背后的内容。 推动:

dataLayer.push({
    'event':'searchHome',
    'eventCategory':'Home',
    'eventAction':'search',
    'eventLabel': 'route|departureDate|returnDate|category|quantity|variant|people|' + resident + '|' + vehicle,
    'eventValue':'0'
});

Javascript获取常驻车辆变量(因为它们失败了):

var vehicle = getTurismoValue($("#search-cars").val(), $("#search-cars option:selected").text(), $("#search-trailer").val());
var resident = getResidenciaValue($("#search-resident").val());

背后的功能:

function getTurismoValue(vehicle, literal, trailer) {
  try {
      if(vehicle != null && typeof vehicle !== "undefined") {
        if (vehicle.trim().length > 0) {
            return "Turismo|" + ((trailer.length > 0)?"si":"no");
        }
      }
      return "0";
  } catch (err) {
    return "0";
  }
};

function getResidenciaValue(resident) {
  try{
    if(resident != null && typeof resident !== "undefined") {
        if (resident.trim().length > 0) {
            return "peninsula";
        }
        return "extranjero";
    }
    return "0";
  } catch(err) {
    return "0";
  }
};

有没有人看到这个javascript有什么奇怪的?什么失败了?

0 个答案:

没有答案