繁体   English   中英

使用Javascript for循环设置Qualtrics Embedded Data

[英]Set Qualtrics Embedded Data with Javascript for loop

我正在进行质量调查,并且需要能够根据随机选择的实验条件设置许多具有不同值的嵌入数据字段。

在Survey Flow中,我输入了所需嵌入数据值的所有名称。

我希望此代码在调查开始时执行,并通过并设置这些嵌入数据变量的值。

我使用for循环的原因是因为变量的名称如下:set1a set1b set1c

var condition  = Math.floor((Math.random() * 3) + 1)
var conditions =[ [8,8,8,5,5,5,5,2,2,2], [8,8,8,7,7,7,7,2,2,2], [10,10,10,5,5,5,5,2,2,2], [10,10,10,7,7,7,7,2,2,2]]
var values = condition[conditions]
var letters ="abcdefghij"


Qualtrics.SurveyEngine.addOnload(function(values)
{
    for (var i = 0; i < values.length; i++ ) {
        var dataname = "set1" + letters.charAt(i) 
        Qualtrics.SurveyEngine.setEmbeddedData(dataname,values[i]);
     }
 });

但是,此代码不起作用。 当我尝试在调查中稍后使用管道文本调用变量时(在分页后),它们似乎没有存储。

你有两个问题。

首先,如果它位于.addOnload函数内,您只能在Qualtrics中设置Javascript,例如:

Qualtrics.SurveyEngine.addOnload(function(values)
{
// Your code
});

其次,您的分配方法 - 值 - 抛出错误消息。

Qualtrics在for循环中保存嵌入数据没有问题,所以如果你修复这两点,你应该好好去。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM