在我的 Qualtrics 调查中,我有一个自由回答(文本框)问题。我想将这个问题的回复转换成 javascript,这样我就可以进行一些复杂的文本处理并将结果发布到外部页面。
看起来官方的 Qualtrics 方法是使用管道文本代码:
var answer = "${q://QID1/ChoiceTextEntryValue}"
但这会生成 javascript 代码,并在代码中插入文字响应。如果调查人员在他们的回复中加上引号,它将破坏代码。我还验证了它可以用来注入任意 javascript!
有什么方法可以安全地将用户生成的值分配给变量?
我试过的:
- 如果有一个 API 调用可以将响应直接放入 javascript 变量中而不必使用管道文本,那就太好了。我检查了他们的API 文档并与技术支持人员进行了交谈,但看起来并不存在这样的功能。
- 如果 Qualtrics 具有用于字符替换的内置功能,我可以使用它来去除引号,那也会很有帮助,但我认为它没有。
- 我可以使用响应验证来防止响应者提交包含引号的响应。这是我想出的唯一可行的解决方案,但对用户来说会很烦人。