【问题标题】:Qualtrics Storing Text Input to Embedded Data by Creating New ButtonsQualtrics 通过创建新按钮将文本输入存储到嵌入式数据
【发布时间】:2017-10-17 23:17:16
【问题描述】:

我已经为此苦苦挣扎了很长时间,终于有了一半的解决方案,但没有其他解决方案。

基本上,我需要 Qualtrics 受访者将数字输入输入到文本框内联,并且我想将该输入存储为嵌入式数据。

到目前为止,在 Qualtrics 页面的 html 中,我有

Enter data here: <input type="text" id="myText" value=" ">
<input type="submit" value="Confirm" onclick="formdata()"/>

<script>
function formdata(){
var questionanswer= document.getElementById("myText").value;
Qualtrics.SurveyEngine.setEmbeddedData("Q1input", questionanswer);
}
</script>

这很好用。它创建了一个文本框,他们可以在其中输入“myText”,然后将其存储为 Embedded Data Q1input,我以后可以访问它。但是,这很烦人,因为他们必须单击我创建的“确认”按钮,然后使用正常的 Qualtrics 下一页按钮离开页面。我这样做是因为当单击 Qualtrics 下一个按钮时我无法通过运行它来让它工作,所以我必须让它在我自己的按钮上运行。

我尝试使用 disableNextButton 和 clickNextButton Qualtrics 代码禁用下一页按钮,但我不知道该放在哪里。我可以通过将代码放入 addOnload 部分来禁用NextButton,但我似乎无法让 clickNextButton 在formdata 函数中运行。

任何帮助将不胜感激!我真的不知道 JavaScript。我只是想拿起这个来进行一项调查。

【问题讨论】:

    标签: javascript jquery html qualtrics


    【解决方案1】:

    处理此问题的最简单方法实际上就是在文本输入字段更改时调用您的函数。由于 Qualtrics 包含 PrototypeJS,您可以使用以下内容:

    Enter data here: <input type="text" id="myText" value=" ">
    
    <script>
    function formdata(){
    var questionanswer= document.getElementById("myText").value;
    Qualtrics.SurveyEngine.setEmbeddedData("Q1input", questionanswer);
    }
    
    $('myText').observe('change', formdata());
    </script>
    

    这里有两个想法:

    1. 您应该将脚本包含在问题的 JavaScript 部分,而不是 html 编辑器中。它属于 addOnReady 部分。

      Qualtrics.SurveyEngine.addOnReady(function() { 函数表单数据(){ var questionanswer= document.getElementById("myText").value; Qualtrics.SurveyEngine.setEmbeddedData("Q1input", questionanswer); }

      $('myText').observe('change', formdata()); });

    2. 您可以通过在 Qualtrics 中使用文本输入问题类型来实现相同的效果,然后使用管道文本将其添加到调查流程中的嵌入数据字段中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-10
      • 2017-11-07
      • 1970-01-01
      • 2021-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-23
      相关资源
      最近更新 更多