我在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
变量。我尝试过类似的其他变化;它们都通过屏幕很好,但我的数据文件中没有变量。
任何帮助都将非常感谢!我完全被难过了。
答案 0 :(得分:-1)
代码工作正常,但Javascript中定义的变量不会自动存储在输出中。您必须将值放入嵌入数据字段。
1)转到Survey流程并定义一个名为choiceID的新嵌入数据字段。它的价值可以保持为空。
2)将以下行添加到您的javascript if (choiceID) {
行上方的javascript。
Qualtrics.SurveyEngine.setEmbeddedData("choiceID", choiceID);
这会将变量choiceID的值发送到同名的嵌入数据字段。