Вы можете использовать директиву ng-focus
в AngularJS для оценки выражения на фокусе ввода.Используя md-autocomplete
, это выглядело бы примерно так:
<md-autocomplete
ng-focus="ctrl.autocompleteGotFocus()"
ng-disabled="ctrl.isDisabled"
md-no-cache="ctrl.noCache"
md-selected-item="ctrl.selectedItem"
md-search-text-change="ctrl.searchTextChange(ctrl.searchText)"
md-search-text="ctrl.searchText"
md-selected-item-change="ctrl.selectedItemChange(item)"
md-items="item in ctrl.querySearch(ctrl.searchText)"
md-item-text="item.display"
md-min-length="0"
placeholder="What is your favorite US state?">
<md-item-template>
<span md-highlight-text="ctrl.searchText" md-highlight-flags="^i">{{item.display}}</span>
</md-item-template>
<md-not-found>
No states matching "{{ctrl.searchText}}" were found.
<a ng-click="ctrl.newState(ctrl.searchText)">Create a new one!</a>
</md-not-found>
</md-autocomplete>
Обратите внимание, что этот пример скопирован непосредственно из документов по угловым материалам, здесь: https://material.angularjs.org/latest/demo/autocomplete
Вотпример plunker: https://plnkr.co/edit/M5itKN0ob2PDcTgIjtVe
В консоли вы увидите, что сообщение регистрируется с помощью функции autocompleteGotFocus
, когда автозаполнение сначала фокусируется.