dart - 具有自动完成功能的 Polymer/Dart 输入

标签 dart dart-polymer

您是否希望在 Dart 中使用“搜索”进行“输入”,最好使用 Polymer。例如,类似于 Google map (www.maps.google.com) 的“输入”和“搜索”。

当您输入“输入”时,会显示一个选项列表,与正在输入的内容相关,您可以在其中选择所需的选项。

在 Polymer/Dart 中实现这种行为的简单方法(或示例)是什么?

谢谢!

最佳答案

你甚至不需要 Polymer

http://www.w3schools.com/tags/tag_datalist.asp

您可以生成 <datalist>通过绑定(bind)到 Polymer 中的一组值。

更新

<link rel="import" href="../../packages/polymer/polymer.html">
<link rel="import" href="../../packages/paper_elements/paper_input.html">
<polymer-element name="app-element">
  <template>
    <style>
      :host {
        display: block;
      }
    </style>
    <paper-input id="pi"></paper-input>
    <datalist id="dl">
      <option>abc</option>
      <option>abcd</option>
      <option>bcd</option>
      <option>bcde</option>
    </datalist>
  </template>
  <script type="application/dart" src="app_element.dart"></script>
</polymer-element>

import 'dart:html' as dom;
import 'package:polymer/polymer.dart';

@CustomTag('app-element')

class AppElement extends PolymerElement {

  AppElement.created() : super.created() {
  }

  attached() {
    super.attached();
    var inp = $['pi'].querySelector('* /deep/ input') as dom.TextInputElement;
    inp.parentNode.append($['dl']); // seems to be only found when it is inside the same shadowRoot
    inp.attributes['list'] = 'dl';  // assign the id of the datalist to the 'list' attribute
  }
}

关于dart - 具有自动完成功能的 Polymer/Dart 输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25833646/

相关文章:

cursor - 如何将光标移动到Dart中的元素?

dart - HTML 和 Dart 导入的区别

dart - 如何在 polymer 自定义元素中渲染阴影 DOM

cordova - 使用酒吧服务从Cordova运行Polymer Dart

dart - 在组件之间共享变量

dart - 将 HTML 安全地注入(inject)到 Polymer 模板中

flutter - 如何禁用 SplashScreen 库的 Flutter 声音安全和空安全?

flutter - 根路由和不同的initialRoute创建奇怪的WidgetTree

dart - Flutter拖放ListView hasSize不正确

dart - AngularDart对聚合物的不兼容版本限制