我正在尝试在选择列表中跟踪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插件中。
感谢阅读, 并感谢你未来的帮助。
吉姆。
答案 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()]);
感谢您的帮助。