官网地址:https://framework7.io/docs/autocomplete.html#autocomplete-parameters

效果图:

<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no, viewport-fit=cover">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<meta name="theme-color" content="#2196f3">
<meta http-equiv="Content-Security-Policy" content="default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap:">
<title></title>

//css引用样式

<link rel="stylesheet" href="../framework7-4.4.10/packages/core/css/framework7.bundle.css">
<link rel="stylesheet" href="../framework7-4.4.10/kitchen-sink/core/css/app.css">

//js引用

<script src="../framework7-4.4.10/packages/core/js/framework7.bundle.min.js"></script>
<script src="../framework7-4.4.10/kitchen-sink/core/js/routes.js"></script>
<script src="../framework7-4.4.10/kitchen-sink/core/js/app.js"></script>
<script src="../framework7-4.4.10/packages/core/components/picker.js"></script>

//页面html

<div class="list no-hairlines-md">
  <div class="block-header">Dropdown With Ajax-Data</div>
  <ul>
    <li class="item-content item-input" onclick="dropdownajax()">
      <div class="item-inner">
        <div class="item-title item-label">Language</div>
        <div class="item-input-wrap">
          <input type="text" placeholder="Language" id="autocomplete-dropdown-ajax" />
        </div>
      </div>
    </li>
  </ul>
</div>

//js

function dropdownajax() {
  var autocompleteDropdownAjax = app.autocomplete.create({
    inputEl: '#autocomplete-dropdown-ajax',//id
    openIn: 'dropdown',//打开方式:page 、 popup 、 dropdown
    preloader: true, //设置为true包括预加载器以自动完成布局
    /* 如果我们将valueProperty设置为“id”,那么select上的输入值将根据该属性设置 */
    valueProperty: 'name', //匹配项对象的键的名称,表示项值
    textProperty: 'name', //匹配项目对象的键的名称,表示项目显示值,用作显示选项的标题
    limit: 20, //限制每个查询的自动完成中显示的最大项目数
    typeahead: true,//预输入----(启用类型提前,将匹配中的第一项预填充输入值)
    dropdownPlaceholderText: 'Try "JavaScript"',//鼠标放上去的提示信息
    source: function (query, render) {//query为输入信息,reader用来绑定数据到备选列
      var autocomplete = this;
      var results = [];
      if (query.length === 0) {
        render(results);//如果没有值,显示备选列表为空
        return;
      }
      autocomplete.preloaderShow();// 显示预警器(后边转圈圈的图标)       //Ajax请求自动完成数据吗
      app.request({
        url: 'json/autocomplete-languages.json',
        method: 'GET',//目前个人使用的时候,type和method是都可以的
        dataType: 'json',
        data: {
          query: query,//发送“query”到服务器。在动态生成响应时非常有用
        },
        success: function (data) {
          for (var i = 0; i < data.first.length; i++) {
            if (data.first[i].name.toLowerCase().indexOf(query.toLowerCase()) >= 0) results.push(data.first[i]);// 找到匹配项
          }
          autocomplete.preloaderHide();// 关闭预警器(后边转圈圈的图标)
          render(results);//通过传递带有结果项的数组来呈现项(显示)
        }
      });
    }
  });
  autocompleteDropdownAjax.open();//在主页面写此段js,一定要open()
}

//json文件:

{
  "first": [
    {
      "name": "Apple"
    },
    {
      "name": "Aapple"
    },
    {
      "name": "Apricot"
    },
    {
      "name": "Avocado"
    },
    {
      "name": "Banana"
    },
    {
      "name": "Melon"
    },
    {
      "name": "Orange"
    },
    {
      "name": "Peach"
    },
    {
      "name": "Pear"
    },
    {
      "name": "Pineapple"
  }
]
}

注意事项与上一篇文章中写到的是一样的,如需使用,请参考上一篇文章的css引用和js引用以及注意事项

这里只是简单的组合了一套,能够使用ajax动态加载的一个方法,详细的一些属性方法和事件还是需要到官网去查看一下

如有问题,欢迎留言!

framework7 Autocomplete (自动完成) 具体使用的更多相关文章

  1. emacs 利用 auto-complete 自动补齐

    emacs 利用 auto-complete 自动补齐 1,首先导入melpa,在文件~/.emacs中添加下面代码 (require 'package) (package-initialize) ( ...

  2. 弹窗中使用jquery ui的autocomplete自动完成插件无效果 实际是被遮挡了

    在普通页面上使用jquery ui的autocomplete自动完成插件时正常显示提供选择的下拉框,但是放到弹窗中的时候就无法显示这个选择的下拉框,其它效果正常: 估计是被弹出窗遮挡了,网络搜索了jq ...

  3. Autocomplete 自动补全(Webform实战篇)

    开篇语 因为项目中需要用到一个自动补全的功能,功能描述: 需求一:新增收件人的时候,自动下拉显示出数据库中所有的收件人信息(显示的信息包括:姓名-收件地址-联系方式) 需求二:选中一个值得时候,分别赋 ...

  4. jQuery AutoComplete 自动补全

    jQuery.AutoComplete是一个基于jQuery的自动补全插件.借助于jQuery优秀的跨浏览器特性,可以兼容Chrome/IE/Firefox/Opera/Safari等多种浏览器. 特 ...

  5. 使用jQuery Autocomplete(自动完成)插件

    jQuery 的Autocomplete(自动完成.自动填充)插件有不少,但比较下来我感觉,还是bassistance.de 的比较强大,我们就来写一些代码感受一下. 最简单的Autocomplete ...

  6. jquery.autocomplete自动补齐和自定义格式

    1.简单的下拉自动补齐,可以使用本地或远程数据源 <input name="autoTag" id="autoTag" /> var source ...

  7. Bootstrap Typeahead/Jquery autocomplete自动补全

    使用Bootstrap Typeahead 组件: Bootstrap 中的 Typeahead 组件就是通常所说的自动完成 AutoComplete,自动填充. 效果如图所示: 实现方式: 1.引入 ...

  8. jquery.autocomplete自动补全功能

    项目实例: 一:js //SupplierAutoComplete.js $().ready(function () { $("#txtSupplier").autocomplet ...

  9. jquery-ui autocomplete 自动完成功能

    效果图

随机推荐

  1. 4.redis 的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现?

    作者:中华石杉 面试题 redis 的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现? 面试官心理分析 如果你连这个问题都不知道,上来就懵了,回答不出来,那线上你写代码的时候,想当 ...

  2. Windows实时预览markdown

    1.安装Notepad++ 2.打开Notepad++菜单栏的"插件(P)",然后打开"插件管理" 3.搜索"MarkdownViewer++&quo ...

  3. Django框架(十)--常用字段、参数、元信息、多对多关联关系

    一.ORM字段 # AutoField() int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列 # IntegerField() ...

  4. Linux的rpm管理

                            书山有路勤为径,学海无涯苦作舟 自学linux已经有几天了,感觉还可以.坚持下去,就会有收获. 每个系统都用相应的软件的管理,Linux也不例外.下面讲 ...

  5. Consul 知识点

    平时开发时,一般使用consul dev模式,开发模式下kv存储不会持久化存储,全在内存中(重启consul就丢了!),所以一般建议yml配置文件内容,在项目中单独存一个文件,启动调试时,直接把配置文 ...

  6. 总结敏捷开发之Scrum

    敏捷开发的概念 敏捷开发是一种以人为核心,迭代,循序渐进的开发方法. 为什么说是以人为核心?传统的瀑布模型是以文档驱动的,但是在敏捷中,只写少量的文档,注重的是人与人之间面对面的交流. 什么是迭代?迭 ...

  7. Java的静态变量初始化的坑

    在网上看到一个很有意思的题目,题目如下 class SingleTon { private static SingleTon singleTon = new SingleTon(); public s ...

  8. Echarts数据更新大坑

    今天使用了一个Echarts来实现柱状图和直线图统计组合,每次通过axios(ajax库)来请求新数据来刷新数据,但是发现请求数据确实是对应变化到了options变量中,后台数据条数只有一条,但是图表 ...

  9. Spring Boot进阶系列三

    Thymeleaf是官方推荐的显示引擎,这篇文章主要介绍怎么让spring boot整合Thymeleaf.  它是一个适用于Web和独立环境的现代服务器端Java模板引擎. Thymeleaf的主要 ...

  10. 如何保证redis数据都是热点数据

    mySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据? 1.限定 Redis 占用的内存,Redis 会根据自身数据淘汰策略,加载热数据到内存.所以,计算 ...