微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs – 如何以编程方式打开角度md-autocomplete?

我需要在特定事件上打开角度材料md-autocomplete下拉列表.有没有办法做到这一点?

我有md-autocomplete,基本设置类似于这个http://codepen.io/paucaverba/pen/GpogPv?editors=101

<div ng-controller="DemoCtrl as ctrl" layout="column" class="autocompletedemoBasicUsage" ng-app="MyApp">

    

<md-autocomplete md-selected-item="ctrl.selectedItem" md-search-text="ctrl.searchText" 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 matches found for "{{ctrl.searchText}}".
    </md-not-found>
  </md-autocomplete>
  <br>
        <button class="md-button md-raised"> open </button>
</form>

如果我点击控件本身,它将打开下拉列表.当我点击“打开”按钮时,我想要相同的行为

解决方法

将id =“auto_complete_id”属性提供给您的md-autocomplete

你可以试试这样的东西:(经过测试.这应该可行.虽然这在codepen上不起作用,但它会在控制台中引发错误)

codepen上的控制台出错(jqLit​​e不支持通过选择器查找元素!)

在本机浏览器上测试它.

HTML:

<button  ng-click=openAutocomplete()> Open </button>

JS:

$scope.openAutocomplete=function(){
   setTimeout(function(){
       angular.element('#auto_complete_id').find('input').focus();
   },0);
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐