jQuery / Javascript Выбор по умолчанию для раскрывающегося списка в Qualtrics - PullRequest
0 голосов
/ 02 июня 2018

У меня есть следующий вопрос в Qualtrics:

Изображение вопроса

В раскрывающемся меню содержатся те же четыре утверждения, что и вВыбор заявления и «Пустышка».Я пытаюсь получить значение по умолчанию для раскрывающегося списка в качестве значения в столбце «Пустышка».

Используя следующий код, я могу получить раскрывающееся значение, равное столбцу выбора оператора:

// Default Choice
var $embedded = [];
var $length = $jq(".SBS2 select").length;
for (var i=0;i<$length-1;i++)
{
$embedded[i] = $jq(".Choice .c1").eq(i).text().trim();
$jq(".SBS2 select").eq(i).find('option:contains(' +$embedded[i]+ ')').attr('selected','selected');
}

$jq('.SBS1').hide(); / Hide Dummy Column/

Я пытаюсь обновить код, чтобы получить значение в «Пустом столбце».вместо.Я попытался обновить ".Choice .c1" до ".SBS1 input", но он просто выбирает последнее значение в раскрывающемся списке для всех строк.

Может кто-нибудь помочь с тем, что я делаю неправильно?

Заранее спасибо

1 Ответ

0 голосов
/ 03 июня 2018

Две вещи: 1. Ваши значения находятся в полях ввода текста, поэтому вам необходимо получить значения этих полей.2. Ваш селектор должен найти поля ввода текста, поэтому «.SBS1 input» является правильным.

Таким образом, измените строку кода $embedded[i] = на следующую:

$embedded[i] = $jq(".SBS1 input").eq(i).val().trim();

Itкажется, вы делаете это трудным путем, хотя.Почему бы просто не передать свои значения по умолчанию во встроенный массив $ вместо того, чтобы создавать фиктивный столбец, который затем нужно скрыть?

var $embedded = ["${e://Field/ed1}".trim(), "${e://Field/ed2}".trim(), etc. ]

Затем можно полностью удалить строку $embedded[i] =.

PS Это не PHP, где вам нужно $ перед переменными ... это на самом деле немного запутывает на первый взгляд.Кроме того, нет необходимости присваивать jQuery переменной, просто используйте jQuery.

...