首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Qualtrics Javascript键盘按键

Qualtrics Javascript键盘按键
EN

Stack Overflow用户
提问于 2016-12-07 10:22:16
回答 1查看 165关注 0票数 1

我得到了一些在Qualtrics中记录键盘按压的javascript代码。在预览调查时似乎工作得很好,但一旦我使用分发调查链接,它就完全不起作用了。

在我想要记录'x‘键盘按键的事件之前,我使用了这个代码:

代码语言:javascript
复制
Qualtrics.SurveyEngine.addOnload(function()
{

Event.observe(document, 'keydown', function (e) {
        
        switch (e.keyCode) {
                case 88: // 'x' was pressed
                        var totalpresses = Qualtrics.SurveyEngine.getEmbeddedData("xhits");
        if (totalpresses == "NaN"){totalpresses=1;}
        totalpresses = parseInt(totalpresses);
                        totalpresses = totalpresses + 1;
        Qualtrics.SurveyEngine.setEmbeddedData("xhits",totalpresses);
        }
});
});

我使用下面的代码来跟踪事件:

代码语言:javascript
复制
Qualtrics.SurveyEngine.addOnload(function()
{ 
        
        var totalpresses = Qualtrics.SurveyEngine.getEmbeddedData("xhits");
            Qualtrics.SurveyEngine.setEmbeddedData("finalxhits", totalpresses);

这为我需要的部分提供了'xhits‘,但仅当我预览调查时。

我正在使用调查流程中的嵌入数据来创建“xhits”和“finalxhits”,但是finalxhits似乎也没有显示值(这并不是问题所在)。

我是javascript的新手,所以如果有任何帮助我将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2016-12-08 21:26:39

我不确定是什么导致了你的问题(我没有尝试重新创建它),但试试这个:

代码语言:javascript
复制
Qualtrics.SurveyEngine.addOnload(function()
{
var totalpresses = parseInt("${e://Field/xhits}");
if (isNaN(totalpresses)) totalpresses = 0;
 
Event.observe(document, 'keydown', function (e) {
        
        switch (e.keyCode) {
                case 88: // 'x' was pressed
                        totalpresses = totalpresses + 1;
                        Qualtrics.SurveyEngine.setEmbeddedData("xhits",totalpresses);
        }
});
});

第二段代码是否附加到后续问题?我不确定它的作用是什么,但你可以在调查流程中完成这项任务:

代码语言:javascript
复制
finalxhits = ${e://Field/xhits}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41008372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档