Я есть выбор управления HTML вроде следующего:Выберите меню отображения несколько раз
<select name="width-dimension-inches" id="width-dimension-inches" data-bind="value: widthWhole,jqmSelectMenuRefresh :true, options: widthDimension.dimension.getDimensionsWhole()">
</select>
Я создал пользовательский нокаута связывание с именем jqmSelectMenuRefresh, потому что всякий раз, когда я выбрал опцию из списка выбора, я не был в состоянии видеть его в списке выбора. Реализация для jqmSelectMenuRefresh показано ниже:
define(["jquery", "knockout", "jqueryMobile"], function ($, ko) {
ko.bindingHandlers.jqmSelectMenuRefresh = {
init: function(element) {
$(element).selectmenu().selectmenu('refresh', true);
},
Когда я запускаю выше код, который я в конечном итоге с двумя selectmenus, как показано ниже:
Что я могу сделать, чтобы решить эту проблему?
UPDATE 1:
Если я обновляю код на следующее:
init: function(element) {
$(element).selectmenu('refresh',true);
тогда я получаю следующее сообщение об ошибке:
Uncaught Error: cannot call methods on selectmenu prior to initialization; attempted to call method 'refresh'
Я попробовал ваш код, и он по-прежнему создает два выберите списки, поскольку вы также назвав его дважды. –