我已经获得了一些用于在Qualtrics中录制键盘按键的JavaScript代码。在我预览调查时似乎工作正常,但是一旦我使用分发调查链接,它就根本不起作用。
我在事件之前使用此代码,我想记录'x'键盘按下:
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);
}
});
});
我正在使用此代码来关注事件:
Qualtrics.SurveyEngine.addOnload(function()
{
var totalpresses = Qualtrics.SurveyEngine.getEmbeddedData("xhits");
Qualtrics.SurveyEngine.setEmbeddedData("finalxhits", totalpresses);
它为我需要的部分提供了'xhits',但仅限于我预览调查时。
我在调查流程中使用嵌入数据创建'xhits'和'finalxhits',但finalxhits似乎也没有显示值(不是这就是问题)。
我是javascript的新手所以非常感谢任何帮助。
答案 0 :(得分:0)
我不确定是什么导致了您的问题(我还没有尝试重新创建它),但请尝试以下方法:
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);
}
});
});
finalxhits = ${e://Field/xhits}