以编程方式将特定JavaScript添加到Qualtrics中的特定问题?

以编程方式将特定JavaScript添加到Qualtrics中的特定问题?,javascript,qualtrics,Javascript,Qualtrics,我用Python在一个文本文件中生成了50段JavaScript代码,目前我必须点击我的50个问题中的每一个,打开JS编辑器,然后从我的文本文件中复制并粘贴相应的脚本 我知道我可以在“外观”中添加通用JavaScript代码作为调查问题的标题,但这不起作用,因为我的每一段JavaScript代码都对应于调查中的一个特定问题;我的JS还为Qualtrics.SurveyEngine对象定义了一个方法,比如Qualtrics.SurveyEngine.addOnload(function()){ /

我用Python在一个文本文件中生成了50段JavaScript代码,目前我必须点击我的50个问题中的每一个,打开JS编辑器,然后从我的文本文件中复制并粘贴相应的脚本

我知道我可以在“外观”中添加通用JavaScript代码作为调查问题的标题,但这不起作用,因为我的每一段JavaScript代码都对应于调查中的一个特定问题;我的JS还为Qualtrics.SurveyEngine对象定义了一个方法,比如
Qualtrics.SurveyEngine.addOnload(function()){
///我的代码
});
把它放在头JS中似乎不会产生任何效果


更多背景信息:我在调查中实施了注意力检查,以确保调查者在每个问题中都能听到音频剪辑。每个音频元素都有一个ID,如“myAudio1”、“myAudio2”、,“myAudio50”,我为每个问题生成了注意力检查JavaScript代码。我导入了关于Qualtrics的50个问题,但我不想手动“导入”这50段JS代码

Qualtrics标题中的JavaScript必须位于
标记内

您可以将音频id添加到问题文本中的隐藏输入字段中。然后让标题中的非问题特定JavaScript通过id获取该值。这种方法需要每页一个问题,因此id是唯一的

问题文本中的输入标记示例:

This is my question text.
<input type="hidden" id="myAudioId" value="myAudio2">

但是如何使
Qualtrics.SurveyEngine.addOnload(function(){})标题JS中的代码工作类型?我认为它只能通过问题的JS编辑器添加……遗憾的是,没有任何地方提到标题JS方法,正如我所说,它必须放在
标记中。标题中的JavaScript在调查的每个页面上运行。你可以在标题中看到一个JavaScript示例。很抱歉,它仍然不适用于我…假设我只想隐藏问题的选项(每页1个问题),所以我编写了
Qualtrics.SurveyEngine.addOnload(function(){this.hideChoices();})作为我的标题JS--但是选择仍然显示。。。同样如你所说,不幸的是,使用这种方法,每页不可能有两个问题(这就是我正在使用的;一个真实的问题,另一个是隐藏的注意力检查问题,带有隐藏的选择“是”和“否”)。。。Qualtrics人员确实需要解决这些基本的JS支持问题……您的示例不起作用,因为“这”不是一个问题。您必须先找到问题的答案,然后将其隐藏(例如,
$$('QID2').hideChoices();
)。该脚本将在一个页面上处理多个问题,只要只有一个id=“myAudioId”。因此,同一页上的两个音频问题不起作用。
var myAudioId = $$('myAudioId').value;