4

Я использую угловой тип головки и сталкиваюсь с проблемами с ngModel.ng-модель не работает с typeahead

Вот мой машинописный HTML

<input 
    type= "text" 
    ng-model= "symbol" 
    placeholder= "begin typing" 
    typeahead= "hit.message for hit in getTypeAheadContents($viewValue)" 
    typeahead-loading= "loadingSymbols" 
    typeahead-editable= "false" 
    typeahead-on-select= "onSelect($item, $model, $label)" 
    typeahead-min-length= 2 
    typeahead-wait-ms= 500 
    class= "form-control" 
/> 

<input ng-click= "search()" value= "Search!"/> 

Вот код в мой контроллер (довольно основной на данный момент)

$scope.search = function(){ 
    alert($scope.symbol); 
} 

Теперь код автозаполнения работает, как ожидалось, но когда я нажмите кнопку поиска, я получу предупреждающее сообщение «undefined»

Что еще более странно, что я попытался установить

в начале моего контроллера, и когда я нажимаю кнопку поиска, не набирая ничего в свой тип, я получаю пустую строку, обратную ко мне, как и ожидалось. Тем не менее, когда я делаю что-то в typeahead и снова нажимаю на поиск, я снова возвращаюсь «undefined». Настолько ясно, что угловой стиль не очень хорошо сочетается с ng-моделью, но я не уверен, что делать здесь.

Рекомендации?

ответ

0

Это не отвечает на вопрос, но я как-то обошел эту проблему, установив другую переменную сферы, равную вводу пользователя внутри функции getTypeAheadContents, а затем используя эту переменную (вместо символа) внутри функция поиска.

1

Не знаю, если это все еще проблема для вас. Но я пробовал последнюю версию angularStrap (2.1.4), и с этим я начал работать, когда я установил ng-модель в объект, на котором я установил свойство.

$scope.selectedPart = {} 

     <input type="text" 
      class="form-control" 
      ng-model="selectedPart.part_id" 
      data-animation="am-flip-x" 
      ng-options="part.value as part.name for part in parts" 
      placeholder="Selecteer onderdeel" 
      bs-typeahead> 

Где-то в какой-то функции (может быть глубоко $ часы)

console.log($scope.selectedPart.part_id) 
+0

Я нашел работу вокруг себя, но спасибо за возвращение мне , Я ценю это. – Zack

3

Просто установите typeahead-editable="true" :-)

Смежные вопросы