Knockout JS и JQuery Auto Complete не может получить значение

0

Я пытаюсь получить значение jquery auto complete, это я могу сделать, проблема в том, что у меня есть несколько автоматических выборок на той же странице, которые находятся в цикле foreach, поэтому он всегда возвращает одинаковое значение для всех изменений. Посмотреть

<tbody data-bind="foreach: new_contact">
  <tr>
      <div data-bind="html: $root.input, attr: { style: 'margin-bottom: 15px' }, event: { change: $root.updateEmailAddress }" /> </div>
  </tr>
</tbody>

модель

root.updateEmailAddress = function(data, event)
{     
  var test = $('.ui-autocomplete-input').val()
  console.log(test)
}

html: $ root.input - это просто наблюдение, которое содержит поле ввода

я попытался использовать

$(this).find(.ui-autocomplete-input').val()

но ничего, с которым я пытаюсь работать с jquery, похоже, работает с любыми идеями

Спасибо

Теги:
autocomplete
knockout.js
jquery-ui-autocomplete
jquery-autocomplete

1 ответ

1
Лучший ответ

Создайте пользовательскую привязку:

ko.bindingHandlers.autocomplete={
  init: function(element, valueAccessor, allBindings, viewModel, bindingContext) {
          $(element).on('change', function() {
             var test=$(this).val();
             console.log(test);
          });
        }
};

Затем удалите раздел change из привязки attr и добавьте , autocomplete к привязкам.

  • 0
    Спасибо большое за помощь

Ещё вопросы

Сообщество Overcoder
Наверх
Меню