Google Analytics& this.selectedIndex:信息没有出现

时间:2012-07-31 12:56:45

标签: javascript google-analytics

我正在尝试在选择列表中跟踪onChange操作。 我需要返回一个selectedIndex,接缝不能正常工作。

这是我的代码:

<select name="triOrdre" id="triOrdre" 
    onchange="_gaq.push(['_trackEvent','Outils','Trier',this.selectedIndex]);">
    <option value="myURL0">Option0</option>
    <option value="myURL1">Option1</option>
    <option value="myURL2">Option2</option>
    <option value="myURL3">Option3</option>                  
    <option value="myURL4">Option4</option>
</select>

关于selectedIndex,我需要的信息是0,1,2,3或4。 如果我放this.value,我会得到selectedValue(所以myURL0,2,...)。 但是没有任何东西可以用于selectedIndex。

BUT: 如果我尝试使用带有GA调试插件的Chrome,插件会看到带有预期值的trackevent。 例如:['_trackEvent','Outils','Trier',1] 但是没有出现在firebug或HTTPFox插件中。

感谢阅读, 并感谢你未来的帮助。

吉姆。

2 个答案:

答案 0 :(得分:0)

不同的浏览器以不同方式处理脚本/ html语法错误。正如Michael在您的评论中所建议的那样,请尝试在您的活动类别中适当地关闭您的单引号。

onchange="_gaq.push(['_trackEvent', 'Outils', 'Trier', this.selectedIndex]);"

修复此问题将帮助您找到任何其他问题(如果存在),因为您将获得更一致的调试器结果。

<强>更新

可能是您的onchange事件处理this.selectedIndex的方式。您可以尝试将该代码放在单独的函数中,并使用console.debug(this.selectedIndex)确保其获得预期值。

onchange="trackEvent(this)"

则...

function trackEvent(selectBox) {

 var selectIndex = selectBox.selectedIndex;
 console.debug(selectIndex);

 _gaq.push(['_trackEvent', 'Outils', 'Trier', selectIndex ]);

}

这可以帮助您调试问题。另一件可能有用的事情是确保如果所选索引是您要跟踪的GA Value,请确保它是整数而不是字符串。

答案 1 :(得分:0)

最后,我得到了答案。

this.selectedIndex是一个整数,GA API接缝只需要刺激值。

所以我需要将Int值转换为String,如下所示:

_gaq.push(['_trackEvent','Outils','Trier',this.selectedIndex.toString()]);

感谢您的帮助。