我在 JavaScript 中使用了一些代码,但很难让它保存响应。无论我如何调整它或做什么,我似乎都无法在实际数据文件中看到该变量。我的脚本如下所示:
Qualtrics.SurveyEngine.addOnload(function() {
if ($('NextButton'))
$('NextButton').hide();
if ($('PreviousButton'))
$('PreviousButton').hide();
var that = this;
Event.observe(document, 'keydown', function(e) {
var choiceID = null;
if (e.keyCode == 49) { //'1' was pressed
choiceID = 1;
} else if (e.keyCode == 50) { //2'' was pressed
choiceID = 2;
} else if (e.keyCode == 51) { //'3' was pressed
choiceID = 3;
} else if (e.keyCode == 52) { //'4' was pressed
choiceID = 4;
} else if (e.keyCode == 53) { //'5' was pressed
choiceID = 5;
} else if (e.keyCode == 54) { //'6' was pressed
choiceID = 6;
} else if (e.keyCode == 55) { //'7' was pressed
choiceID = 7;
}
if (choiceID) {
that.setChoiceValue(choiceID, true);
that.clickNextButton();
}
});
});
调查运行认为此代码很好,但我的数据文件中没有创建 choiceID
变量。我尝试过类似的其他变体;它们都很好地通过屏幕,但我的数据文件中没有变量。
任何帮助将不胜感激!我完全被难住了。
最佳答案
代码工作正常,但 Javascript 中定义的变量不会自动存储在输出中。您必须将该值放入嵌入的数据字段中。
1) 转到调查流程并定义一个新的嵌入数据字段,例如名为 choiceID 的字段。它的值可以保留为空。
2) 在 JavaScript 中包含 if (choiceID) {
的行上方插入以下行。
Qualtrics.SurveyEngine.setEmbeddedData("choiceID", choiceID);
这会将变量 choiceID 的值发送到同名的嵌入数据字段。
关于javascript - Qualtrics Javascript 不保存响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40005305/