Я пытаюсь использовать dropkick.js для создания раскрывающегося меню в веб-приложении. Мне нравится dropkick.js из-за поддержки клавиатуры и хороших пользовательских тем. Однако кажется, что он работает только со статическими меню; когда я динамически обновляю оригинальный элемент (используя привязки knockout.js), меню dropkick.js не обновляется.
Чтобы уточнить, проблема в том, что программное изменение значения selectedChannel (или самого списка каналов) не приводит к обновлению раскрывающегося списка. Другой способ работает (нажмите в выпадающем списке, см. Обновление переменной selectedChannel).
Буду очень признателен за ссылку на существующее решение этой проблемы или указатели о том, как решить эту проблему самостоятельно, изменив dropkick.js (или используя пользовательскую привязку knockout.js?). Или, может быть, это может / должно работать, но я делаю что-то не так?
привязка с использованием knockout.js:
<select id="channelSelector" data-bind="options: channels, optionsText: 'name', optionsValue: 'id', value: selectedChannel"></select>
код установки:
$('#channelSelector').dropkick();
обновить код с помощью knockout.js, который не приводит к тому, что раскрывающийся список обновляет выбранное значение:
vm.selectedChannel(vm.channels()[0].id);
Пример проблемы: http://jsfiddle.net/37QvY/