Я пытаюсь получить выбранное значение ввода типа head и каждый раз получаю эту ошибку: Uncaught TypeError: Cannot assign to read only property 'highlight' of
. Он никогда не говорит мне, к какому объекту он относится, и он возникает из файла TypeAhead.min.js, поэтому я не могу точно сказать, какая строка моего кода вызывает его. Вот код, я использую, чтобы создать и захватить значение входа:TypeAhead.js Highlight TypeError
$(".articles.new").ready ->
engine = new Bloodhound {
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('name'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
local: autocomplete_items
}
engine.initialize()
$('#auto_complete').typeahead { hint: true, highlight: true, minLength: 1 },
{ name: "names", displayKey: "name", source: engine.ttAdapter()}
$('#auto_complete').on 'typeahead:selected', (event, selection) ->
alert selection.name
$('#auto_complete').typeahead 'setQuery', ''
event.stopPropagation()
return
return
Для контекста: auto_complete элементы представляет собой массив объектов из моего контроллера с именем свойства. Я работаю в Ruby on Rails 4.1.4.
Что можно сделать, чтобы исправить эту ошибку? Что вызывает это?
Похоже, что это связано с тем, что функция val определена в массиве методов и уже инициализирована, но setQuery - нет. Инициализация setQuery вызывает ошибку. Так что просто похоже, что использование val - правильный способ сделать это. –