Встроенные данные в Qualtrics отображаются на вкладке «Данные и анализ», но не отображаются для участников. - PullRequest
0 голосов
/ 11 февраля 2020

Таким образом, в моем опросе Qualtrics есть немного JS, в котором принимается ответ на вопрос, и если этот ответ не пустой, в него будет вставлен ответ участника (который будет вызван позже в опросе). Если они ничего не вводят, я заставил его напечатать строку. Я сделал это следующим образом:

Qualtrics.SurveyEngine.addOnUnload(function()
{
    /*Place your JavaScript here to run when the page is unloaded*/
    var tboxID= "QR~"+this.questionId;
    var hometownStr = document.getElementById(tboxID).value;

    Qualtrics.SurveyEngine.setEmbeddedData('hometownStr',hometownStr);

    if(!hometownStr || 0 === hometownStr.length)
    {
        Qualtrics.SurveyEngine.setEmbeddedData('hometownStr', "your hometown"); 
    }
});

После того, как блок находится в Я вложил данные .

Итак, допустим, меня спросили вопрос (в который встроен JS): Какой у вас родной город? Я либо отвечаю, что мой родной город (например) "Пейсли", либо я оставляю это поле пустым. Если я не отвечу на вопрос, следующий вопрос скажет Это человек из из вашего родного города . Если я действительно отвечу на вопрос, он должен напечатать: Это человек из Пейсли .

Однако , последний пример не печатает «Пейсли» ( ничего не печатает ). К вашему сведению, предыдущий пример работает нормально.

Странно то, что, хотя «Пейсли» не напечатано в опросе, оно выходит в окончательных данных (находится на вкладке «Данные и анализ»).

Примечание : я называю внедренные данные ${e://Field/hometownStr}.

Кто-нибудь знает, почему это может происходить? Заранее благодарю за любую помощь; пожалуйста, скажите мне, что я глуп и пропускаю что-то важное, и это не ошибка в Qualtrics ...

К вашему сведению, этот код работал в прошлом, поэтому я не думаю, что это проблема с код. Я реорганизовал некоторые вопросы и блоки, и он просто перестал работать.

1 Ответ

0 голосов
/ 11 февраля 2020

Переместить встроенный блок данных потока опроса ДО блок, в котором его устанавливает JS.

РЕДАКТИРОВАТЬ: я заметил, что вы используете addOnUnload. Вместо этого используйте addOnPageSubmit.

...