【问题标题】:Angular-material. Autocomplete directive角材料。自动完成指令
【发布时间】:2015-10-21 06:21:38
【问题描述】:

我在自动完成方面遇到了一些问题。我的问题是:我可以从自动完成列表中发送我自己输入的文本而不是对象吗?

当我将对象从列表发送到“person.eamil”时,没关系,但是 当我将普通文本发送到“person.email”时,我得到 null 而不是我的文本。

这是我的 HTML 代码:

<md-autocomplete
  ng-model="person.email"
  ng-disabled="false"
  md-no-cache="true"
  md-selected-item="person.email"
  md-search-text-change="setPersonValidEmail(person, !innerForm.email.$error.email);"
  md-search-text="searchText"
  md-items="item in people"
  md-item-text="item.email"
  md-min-length="0"
  placeholder="some@one.com"
  ng-click="addOurPersonIfNecessary($index);"
  name = "email">
  <md-item-template>
    <span md-highlight-text="searchText" md-highlight-flags="^i">{{item.name}}</span>
  </md-item-template>
</md-autocomplete>

【问题讨论】:

    标签: autocomplete angular-material


    【解决方案1】:

    这里的 Md-selected-item 期望的是一个填充在人中的对象。只有这样它才能填充自动完成。您可以将文本传递给 md-search-text

    【讨论】:

    • 那么我如何将数据从输入传递到 md-search-text 对象?抱歉这个愚蠢的问题,但我是角度的新手。
    • 我尝试使用 focuseout() / focusein() 但没有用。
    • focusin 和 focuout 在角度自动完成行为中被覆盖,关闭和打开自动完成框因此使用它不会有帮助
    【解决方案2】:

    我找到了解决方案。尝试使用另一个像这样的自动完成插件:

    https://github.com/ghiden/angucomplete-alt

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-03-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-10
      相关资源
      最近更新 更多