設定するフィールドが少ないダイアログがあります。最初のフィールドはmd-autocomplete
です。[OK]をクリックすると、これらのフィールドはすべてクリーンアップされるので、md-autocomplete
でフォーカスをtrueに設定して、入力を開始します。再びデータ。
これを試して :
JS:
$scope.setFocus = function() {
setTimeout(function() {
document.querySelector('#autoCompleteId').focus();
}, 0);
}
HTML:
<md-autocomplete .............. md-input-id="autoCompleteId">
<!-- Note the id -->
</md-autocomplete>
<input type="button" value="clickMeForFocus" ng-click="setFocus()" />
フォーカスの呼び出し時にオートコンプリートコンポーネントが確実にレンダリングされるようにするには、タイムアウトが必要です。
あなたは属性を追加することによってそれを行うことができます
md-オートフォーカス
例:
<md-autocomplete md-autofocus md-selected-item="selectedItem" md-search-text="searchText" md-items="item in getMatches(searchText)" md-item-text="item.display">
<span md-highlight-text="searchText">{{item.display}}</span>
</md-autocomplete>
ref: ここ
よろしく。