Автозаполненный ответ Qualtrics не фиксируется в ответах

Я реализую функцию автозаполнения в опросе Qualtrics. Когда пользователь вводит текст в текстовое поле, появляется список элементов, содержащих введенный пользователем текст. Пользователь может выбрать заполнение текстового поля элементом из этого списка.

Однако, когда я выбираю из списка, введенный текст появляется в данных ответа вместо выбора. Например, я набираю «А» и выбираю «Apple». «Apple» появляется в текстовом поле опроса, но в данных записывается «A». Если вы продолжаете редактировать введенный текст, все, что отображается в текстовом поле, записывается в данные. Однако я не ожидаю, что респонденты опроса будут редактировать текст после того, как они выбрали свой ответ. Это проблема в Internet Explorer и Chrome. «Apple» появляется в данных, когда я отвечаю на опрос с помощью Firefox.

Я использовал решение из предыдущего вопроса: Unsolved — добавление автозаполнения с помощью Javascript в Qualtrics, но появляется та же проблема (наряду с другими проблемами).

Это код, который я использую в Look and Feel, Advanced:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.3/themes/smoothness/jquery-ui.css" rel="stylesheet" /><script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.3/jquery-ui.min.js"></script><script>

var qtrix = new Object();

qtrix.$ = jQuery.noConflict();

qtrix.helloWorld = function() {
  alert("Hello world!");
};

qtrix.autoCompleteList = [ ];

function qtrixSetAutoCompleteList(list) {
  qtrixAutoCompleteList = list;
}

qtrix.accentMap = {
    "á": "a",
    "à": "a",
    "ä": "a",

    "é": "e",
    "è": "e",
    "ë": "e",

    "í": "i",
    "ì": "i",
    "ï": "i",

    "ó": "o",
    "ò": "o",
    "ö": "o",

    "ú": "u",
    "ù": "u",
    "ü": "u"
};

qtrix.articles = [
    "the",
    "le",
    "l'",
    "la",
    "die",
    "das",
    "der"
];

qtrix.stripAccents = function(term) {
    var ret = "";
    for (var i = 0; i < term.length; i++) {
    ret += qtrix.accentMap[term.charAt(i)] || term.charAt(i);
    }
    return ret;
};

qtrix.cleanTerm = function(term) {
    term = term.toLowerCase();
    for (var i = 0; i < qtrix.articles.length; i++) {
    if (term.substring(0, qtrix.articles[i].length) == qtrix.articles[i]) {
        return term.substring(qtrix.articles[i].length, term.length)
        .trim();
    }
    }
    return term;
};

qtrix.addAutoComplete = function(id, list) {
    qtrix.$(id).autocomplete({
    source: function(request, response) {
        request.term = qtrix.cleanTerm(request.term);
        var matcher =
        new RegExp(qtrix.$.ui.autocomplete.escapeRegex(request.term), 
               "i");
        response(qtrix.$.grep(list, function(value) {
        value = value.label || value.value || value;
        return matcher.test(value) || 
            matcher.test(qtrix.stripAccents(value));
        }));
    }
    });
};

</script>

Это код в поле javascript вопроса:

Qualtrics.SurveyEngine.addOnload(function()
{
    qtrix.addAutoComplete("#QR\\~QID6", [
"Item 1",
"Item 2",
"Item 3",
"Item 3000"
        ]);
});

Я не знаком с Javascript и довольно плохо знаком с этим уровнем настройки в Qualtrics. Я был бы признателен за любое руководство или руководство. Благодарю вас!


person paperclipofperil    schedule 28.10.2015    source источник
comment
Можно ссылку на ваш вопрос? Вы хотите, чтобы ответы ограничивались элементами списка, или ответы могут быть открытыми?   -  person T. Gibbons    schedule 28.10.2015
comment
Благодарю за ваш ответ! Извините, я не могу дать ссылку на вопрос. Вопрос спрашивает, в каком колледже учится студент. Вопрос открытый, но мы хотели бы поощрять некоторое соответствие, особенно при работе с несколькими кампусами. Например, некоторые студенты могут написать Калифорнийский университет. Автозаполнение покажет различные кампусы UC, что, надеюсь, побудит студента указать.   -  person paperclipofperil    schedule 29.10.2015