首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >质量学答案选择随机选择与下降

质量学答案选择随机选择与下降
EN

Stack Overflow用户
提问于 2015-06-02 01:44:56
回答 2查看 673关注 0票数 0

在Qualtrics中,我很难随机选择答案。我想要随机化,这样答案选择的顺序被保留,但是顺序要么是上升的,要么是下降的。

例如,我想在A订单和B订单之间随机化

A令)

  • 1
  • 2
  • 3.

命令B)

  • 3.
  • 2
  • 1

一种方法是使用块随机化,并为A和B顺序创建单独的块,但是我有很多问题想用这种方式随机化。我不想最后有太多的街区。

有没有人有Javascript代码,所以随机化发生在每个问题中,而一个问题不需要创建两个独立的问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-06-09 19:54:30

我的解决方案是在每个问题中包含两次答复,并使用Javascript隐藏一个顺序或另一个顺序。

首先,添加一个多项选择题,回答首先按升序排列,然后按降序排列。例如,

问题文本

  • 回应1
  • 回应2
  • 回应3
  • 回应3
  • 回应2
  • 回应1

现在,将这个Javascript添加到您希望随机排序的每个问题中。

代码语言:javascript
复制
var numChoices = this.getChoices( "radio" ).length;
var choices = this.getChoices( "radio" );
var pivot = parseInt(numChoices) / 2
var QID = this.getQuestionInfo().QuestionID;
var rand = Math.round(Math.random());

if (rand == 1) {
    for (var i = 0; i < pivot; i++) {
        var idString = ("QR~" + QID + "~" + choices[i]);
        document.getElementById(idString).parentNode.style.display = "none";
    }
} else {
    for (var i = pivot; i < numChoices ; i++) {
        console.log("i: " + i + "pivot: " + pivot);
        var idString = ("QR~" + QID + "~" + choices[i]);
        document.getElementById(idString).parentNode.style.display = "none";
    }
}

这个Javascript随机隐藏了一个顺序或另一个顺序。代码是以编程方式编写的,因此您可以输入任意数量的响应(只要包含两个订单)。

票数 1
EN

Stack Overflow用户

发布于 2015-06-10 19:53:26

我只是为了做个调查才这么做的。理想情况下,您不希望重复/隐藏响应。这个解决方案只是随机地将选择移动到相反的顺序。

代码语言:javascript
复制
Qualtrics.SurveyEngine.addOnload(function() {
    var rand = Math.round(Math.random());
    if(rand == 1) {
        var qid = this.questionId;
        var choices = $(qid).select('li.Selection');
        var lastChoice = choices.last();
        for(i=0;i<choices.length-1;i++) {
            $(lastChoice).insert({
                after: choices[i]
            });
        }   
    }
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30586015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档