我有此代码段(不幸的是,除非您拥有qualtrics帐户并进入预览调查并在控制台中运行它,否则它对您不起作用)不断抛出错误(无法设置未定义的属性“ questions0” )。但是我只是向主对象添加了一个名为ArrayOfBlocks2的对象。有人可以告诉我为什么为什么说ArrayOfBlocks2不确定吗?
Qualtrics.SurveyEngine.setEmbeddedData("ArrayOfBlocks",ArrayOfBlocks)
var ArrayOfBlocks1 = Qualtrics.SurveyEngine.getEmbeddedData("ArrayOfBlocks")
for(i=0;i<Qualtrics.SurveyEngine.getEmbeddedData("ArrayOfBlocks").length;i++){
for(k=0;k<Qualtrics.SurveyEngine.getEmbeddedData("ArrayOfBlocks")[i].BlockElements.length;k++){
var ArrayOfBlocks2 = ArrayOfBlocks1[i].ID
console.log(ArrayOfBlocks2)
ObjectIDWithQuestions[ArrayOfBlocks2]={}
Qualtrics.SurveyEngine.setEmbeddedData("OBID",ObjectIDWithQuestions);
ObjectIDWithQuestions.ArrayOfBlocks2["questions"+ k]=Qualtrics.SurveyEngine.getEmbeddedData("ArrayOfBlocks")[i].BlockElements[k].QuestionID
Qualtrics.SurveyEngine.setEmbeddedData("ObjectIDWithQuestions",ObjectIDWithQuestions)
}
}
我希望它不会引发错误,并将“ questions + k”设置为对象键。
答案 0 :(得分:0)
默认情况下,嵌入数据不会存储数组,您可能需要在存储之前对数据进行json编码,并在获取时json解析数据。