You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Qualtrics循环与合并中各字段内随机抽取图片的实现方法

在Qualtrics中实现Loop & Merge字段独立随机抽取行的方法

方法一:用Qualtrics内置设置实现(无需代码)

  • 先在问卷的Embedded Data模块中添加三个变量,比如RandRow1、RandRow2、RandRow3,分别对应三个字段的随机行号。
  • 进入Survey Flow,在第一个问题之前依次添加三个「Set Embedded Data」步骤:
    • 第一个步骤设置RandRow1,值填写${randint(1, X)},把X替换成第一个字段的总行数;
    • 第二个步骤设置RandRow2,值填写${randint(1, Y)},Y替换成第二个字段的总行数;
    • 第三个步骤设置RandRow3,值填写${randint(1, Z)},Z替换成第三个字段的总行数。
  • 回到问题编辑界面,修改每个问题的图片调用逻辑:
    • 第一个问题的图片URL从${lm://Field/1}改成${lm://Field/1/${e://Field/RandRow1}};
    • 第二个问题改成${lm://Field/2/${e://Field/RandRow2}};
    • 第三个问题改成${lm://Field/3/${e://Field/RandRow3}}。
  • 这样每个问题就会基于各自的随机行号,独立抽取对应字段的内容,不再同步同一行。

方法二:用JavaScript实现(适合灵活定制场景)

假设第一个问题的图片元素ID是Image1(可右键图片选「Inspect」查看具体ID),字段1总行数为X,在该问题的「JavaScript」编辑框中添加以下代码:

Qualtrics.SurveyEngine.addOnload(function() {
  // 生成1到X之间的随机整数,替换X为字段1的总行数
  const randomRow = Math.floor(Math.random() * X) + 1;
  // 获取字段1对应随机行的图片URL
  const imgUrl = Qualtrics.SurveyEngine.getEmbeddedData(`lm_Field_1_${randomRow}`);
  // 更新图片的地址
  document.getElementById('Image1').src = imgUrl;
});

另外两个问题依葫芦画瓢:修改字段编号(lm_Field_2_、lm_Field_3_)、随机数范围(替换成对应字段的总行数)和图片元素ID(Image2、Image3)即可。

内容的提问来源于stack exchange,提问作者Dodi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 23:12:05