Как динамически обновить параметры в выпадающем меню dropkick.js? - PullRequest
2 голосов
/ 04 февраля 2012

Я пытаюсь использовать 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/

Ответы [ 2 ]

1 голос
/ 02 мая 2012

Вы должны прочитать этот ответ и комментарии, вот что помогло мне сделать это.

Проблемы с настройкой значения / метки с помощью DropKick Javascript

Ура!

1 голос
/ 04 февраля 2012

Я сделал для вас работоспособный скрипт для обновления selectedChannel

http://jsfiddle.net/helk/AFtSS/1/

Cheers!

...