#javascript #jquery #jquery-select2
#javascript #jquery #jquery-select2
Вопрос:
Итак, я использую фреймворк YII 1 (против своей воли) и пытаюсь динамически обновлять виджет select2 с помощью jquery.
Виджет
$this->widget('booster.widgets.TbSelect2', [
'asDropDownList' => false,
'name' => 'target',
'val' => $val,
'options' => ['data' => []],
'htmlOptions' => ['class' => 'target-select', 'id' => 'service']
])
Jquery
$.each(response.html, function(key,value) {
target.append('<option value="' value.id '">' value.text '</option>');
});
У меня есть элемент, который отлично отображается на странице, без каких-либо параметров внутри него.
Запрос ajax извлекает некоторые параметры, которые должны быть размещены внутри выбора, но это просто добавляет параметры в виде текста после элемента, а НЕ внутри элемента.
Есть идеи, как получить эти параметры внутри выбора?
Комментарии:
1. В jQuery нет ничего изначально неправильного, поэтому кажется, что ваш
target
не указывает на ваш<select>
. Возможно, публикация немного большего количества вашего кода JavaScript поможет?2. Это именно то, что я подумал. смотрите мой ответ. Я думаю, что «service» — это идентификатор выбора на основе информации, содержащейся в вопросе. @Donal. Линч. Msc Не могли бы вы опубликовать HTML-код элемента select?
Ответ №1:
$('#service').append('<option value="' value.id '">' value.text '</option>