我正在使用角度1和md-autocomplete
<md-autocomplete
md-autofocus="true"
md-autoselect="true"
md-select-on-match="false"
md-search-text-change="$ctrl.searchTextChange($ctrl.searchText)"
md-search-text="$ctrl.searchText"
md-items="item in $ctrl.performQuery($ctrl.searchText)"
md-item-text="item.name"
md-no-cache="true"
md-min-length="0"
placeholder="{{'core.common.filter.results' | translate}}"
md-selected-item-change="$ctrl.onItemChange()"
ng-readonly="$ctrl.isReadOnly">
此处我的自动填充功能已定义
setFocus(){
setTimeout(() => {
this.$element.find('md-autocomplete').find('input').focus()
},0)
}
从另一种方法我称之为setFocus()
func
对于桌面和Android一切正常。这两个必要的功能都被称为:自动完成选择器和键盘(用于移动设备)
我也进行了调试,发现正确的输入是集中的
但问题是,每次关注输入都不会在ios上调用键盘,它可能会随机发生。在这个时候每次都会显示自动填充建议
还尝试使用querySelectorAll
和querySelector
相同的问题
document.querySelectorAll('md-autocomplete > md-autocomplete-wrap > input')[0].focus()