JavaScript style.display 在 Qualtrics 中没有响应

JavaScript style.display not responding in Qualtrics

我有一些 JavaScript 我过去曾在多个 choice:multiple 回复问题中使用过,以隐藏某些复选框,以便在回复选项中创建 headers。以下将隐藏第一项和第五项的复选框:

$("QR~QID40~1").style.display="none";
$("QR~QID40~5").style.display="none";

这曾经与 "Business Modern Blue" 主题一起使用,但 Qualtrics 最近停止使用它(以及许多其他主题)。剩下的最适合我需要的皮肤是 "Minimal 2014." 我检查了元素 ID,它们仍然相同。我也试过 $("QR~QID40~1").style.visibility="hidden"; 但没有成功。至少,这些在 Firefox 或 Chrome 中不起作用。 Qualtrics 已经删除了几乎所有以前没有解释(我能找到)的在线 JavaScript 帮助,所以我很困惑。

您需要隐藏标签而不是实际的复选框。尝试以下操作。它具有不对 QID 进行硬编码的额外好处:

var qid = this.questionId;
var q = $(qid);
q.down('label[for="QR~'+qid+'~1"]').hide();
q.down('label[for="QR~'+qid+'~5"]').hide();

也就是说,在响应选项中创建 headers 的更好方法是使用选择组(从问题左侧的齿轮中选择)。这样一来,您就根本不需要 JavaScript。