我正在Qualtrics创建一个包含许多照片的调查,比如1000.我想让每个调查参与者回答,比如6,每张照片的问题.每位参与者将看到5张随机分配的照片.
在研究之前,我假设有一种方法可以上传1000张照片,在Qualtrics中创建一个块(带有6个问题),然后简单地随机化出现的照片并将其重复5次.
但似乎这不可能或不明显.我打电话给Qualtrics,他们说我会手动创建1000个块(除了标题和照片之外,每个块都是完全相同的).然后我需要进入Survey Flow并在那里使用Randomizer并手动添加所有1000个块并让它随机呈现5个元素.
我真的希望有更好的方法.如果我必须这样做,这将花费大量时间.
如果没有,有什么方法可以自动化任何东西吗?
请在下面找到我的代码,该代码将鼠标悬停事件的工具提示添加到我的调查引擎中的字段中。我想要实现的是在工具提示中添加换行符。任何帮助是极大的赞赏。
var $j = jQuery.noConflict();
$j('#choice31QID405').mouseover(function() {
$j(this).attr('title','My name is Glenn. <Add a line break>. I am a good boy'. <Add a line break>. I live in New Delhi);
})
$j('#choice31QID405').mouseout(function() {
$j(this).removeAttr('title');
})
Run Code Online (Sandbox Code Playgroud) 可能是一个愚蠢的问题,但我现在已经把头撞到墙上一段时间了.我决定尝试工厂男孩库来简化我的测试并定义一个工厂:
from . import models
import factory
class QualtricsSurveyCacheFactory(factory.Factory):
class Meta:
model = models.QualtricsSurveyCache
survey_id = "SR_1234"
qualtrics_username = "bla@blah.bla#bla"
survey_name = "fake"
Run Code Online (Sandbox Code Playgroud)
但是,当我这样做时QualtricsSurveyCacheFactory.create(),返回id = None的模型
>>> survey = QualtricsSurveyCacheFactory()
>>> print survey.id
None
Run Code Online (Sandbox Code Playgroud)
我可以.save()在创建后进行建模,但只是好奇为什么它不能自动完成.
我目前正在进行一项 Qualtrics 调查,其中受访者必须解决一长串字谜,然后回答一些人口统计问题。
为了使字谜部分更容易,我使用了循环和合并块:第一个字段是要解决的字谜,第二个字段是字谜的解决方案,因此调查可以根据答案检查受访者的答案每个字谜的解决方案。
实际上,该调查运行良好:但是,我希望通过在响应字段中键入“EXIT”来允许受访者提前退出循环,并将他们重定向到下一个问题块(人口统计问题)。
这通常是使用“跳过”逻辑实现的:但是,跳到块的末尾并不能解决问题(循环重新启动)。我设法将它们重定向到调查的末尾,但没有重定向到人口统计问题块。
有没有办法使用javascript跳转到人口统计块或退出循环并过早合并块?我是否缺少可以解决问题的 Qualtrics 选项?
我想使用 Qualtrics 获得超过 700 张图像的评级(即参与者必须表明他们对这些图像的评价有多负面或正面)。每个图像的问题都是完全相同的,但似乎没有简单的方法可以只创建一次问题,然后循环遍历我希望参与者评分的所有图像。显然,我真的不想把同样的问题写700遍。
我在 Stack Overflow 上找到了一个相关答案,似乎提出了一个很好的解决方案 - 这里是:Randomization in Qualtrics using Photos or Graphics and Loop and Merge。然而,我的问题不仅仅是这个问题的重复,因为我在底层运行网页抓取代码时遇到了麻烦(我是一个非常缺乏经验的编码员,Python 知识有限),因此有一些后续问题。
我尝试以多种不同的方式运行上述代码(我有 BeautifulSoup 和 Selenium):
1)使用建议的所有代码创建一个 .py 文件(例如 getURL.py),然后从 PowerShell 运行它(我知道如何运行 python 代码的唯一方法)
python getURL.py
Run Code Online (Sandbox Code Playgroud)
这将打开一个 Chrome 浏览器(data:,),但它最终创建的文件是空的。我猜当我导航到库时,代码已经运行并到达 for 循环的末尾。
2)我尝试在 PowerShell 的 Python 解释器中逐行运行它,如下所示:我将浏览第一个块,这将打开浏览器,然后我将导航到浏览器中的照片库(我是吗?除了在浏览器中显示网站之外还应该做其他事情吗?)。完成后,我将使用 for 循环继续执行下一个代码块 - 我会将其粘贴到解释器中,无论是作为块还是逐行 - 但 python 似乎不执行它。
谁能告诉我如何运行该代码?
或者:有谁知道一种更简单的方法 a) 让 Qualtrics 循环图像,或 b) 快速获取 700 个 URL 的列表?
非常感谢你的帮助。
Qualtrics生成第一行中带有变量名的csv文件,第二行中带有变量标签.我想使用read_csv()读取我的数据,同时读取第一行作为列名,然后跳过下一行变量标签.以下是我失败的尝试.
library(readr)
mydata <- read_csv("qualtrics_data.csv", col_names = TRUE, skip = 2) # this would actually skip both the names and label rows.
Run Code Online (Sandbox Code Playgroud) 多年来我没有玩过任何编码,我正在努力理解 Qualtrics 提供的用于在调查中禁用“下一步按钮”的模板。“下一步按钮”不必完全禁用(可以是白色)。由于调查是出于研究目的,我需要避免按钮在定时问题上分散参与者的注意力。
这是我为编码而查看的两页。
https://s.qualtrics.com/WRAPI/QuestionAPI/classes/Qualtrics%20JavaScript%20Question%20API.html
https://www.qualtrics.com/wp-content/uploads/2011/07/Qualtrics-Question-API.pdf
如果您有更好的编码方法,或者可以为我更深入地解释编码大纲,我将不胜感激。
我正在使用允许嵌入式JavaScript内容(Qualtrics)的外部站点.Qualtrics动态加载一些控制器.当我通过Chrome网络面板测试访问这些控制器时,在完全加载后,我可以在Elements窗口中看到加载的控制器,它代表当前的DOM.但是,我无法通过id访问这些元素,无论是使用jQuery还是通过document.getElementById.
其中一个控制器具有id QID12~14~handle.在Elements DOM浏览器中,我看到了标签:
<div id="QID12~14~handle" class="handle selected" style="left: 122px;"></div>
Run Code Online (Sandbox Code Playgroud)
当我查看页面的源代码时,我看到它们是动态加载的,并通过脚本标记插入到页面中:
<div class='QuestionBody BorderColor'>
<div class='horizontalbar ChoiceStructure RtlOverride'></div>
<div id='debug'></div>
<!-- This has to be called after the html it references. Thats why its down here -->
<script type='text/javascript'>
QModules.loadExternalModule('../WRQualtricsShared/JavaScript/CSBar/slider.51487.js', function () {
(function () {
CS_QID15 = new CSBar('0', '100', '10', 'QID15', '');
if (CS_QID15.loaded) {
CS_QID15.setDecimals(0);
if (CS_QID15.snapToGrid) {
CS_QID15.makeSlider('QID15~1');
CS_QID15.makeSlider('QID15~2');
CS_QID15.setStartPositions({"1": 0, "2": 0, "3": 0.64599483204134});
}
else {
CS_QID15.makeSlider('QID15~1');
CS_QID15.makeSlider('QID15~2');
CS_QID15.setStartPositions({"1": 0, "2": 0, "3": …Run Code Online (Sandbox Code Playgroud)