1. 引入css和js

  1. <link rel="stylesheet" href="{{ url_for('static', filename='jquery.autocomplete.css') }}">
  2. <script src="{{ url_for('static', filename='jquery-1.11.3.js') }}"></script>
  3. <script src="{{ url_for('static', filename='jquery.autocomplete.js') }}"></script>

2. 添加测试html代码

  1. {% macro login() %}
  2. <div>
  3. <div class="form-row">
  4. <span class="form-label">用户名</span>
  5. <input type="text" class="form-control" id="uname">
  6. </div>
  7. <div class="form-row">
  8. <span class="form-label">密码</span>
  9. <input type="password" class="form-control" id="pwd">
  10. </div>
  11. <div class="form-row">
  12. <span class="form-label"></span>
  13. <button class="btn btn-primary btn-sm" id="denglu">
  14. <span class="glyphicon glyphicon-log-in"></span> 登录
  15. </button>
  16. <span id="msg" class="label label-danger"></span>
  17. </div>
  18. </div>
  19. {% endmacro %}

3. 添加js代码,测试用户名输入的自动提示

  1. jQuery("#uname").autocomplete("{{ url_for('mails') }}", {
  2. minChars: 0,
  3. width: 300,
  4. multiple: false,
  5. matchContains: true,
  6. autoFill: false,
  7. parse: function(data) {
  8. return $.map(eval(data), function(row) {
  9. return {
  10. data: row,
  11. value: row.name + ' [' + row.to + ']',
  12. result: row.to
  13. }
  14. });
  15. },
  16. formatItem: function(row, i, max) {
  17. return row.name + " [" + row.to + "]"; //文本框显示的内容
  18. }
  19. }).result(function(event, data){
  20. console.log(data); //{name: "Master Sync", to: "205bw@samsung.com"}
  21. });

4. 添加后台的python代码,被插件调用

  1. @app.route('/mails/')
  2. def mails():
  3. result = [
  4. {'name': "Demo", 'to': "jonney@163.com" },
  5. {'name':"Pete'r Pan", 'to': "peter@pan.de"},
  6. {'name': "Molly", 'to': "molly@yahoo.com"},
  7. {'name': "Forneria Marconi", 'to': "live@japan.jp"},
  8. {'name': "Master Sync", 'to': "205bw@samsung.com" },
  9. {'name': "Dr.Tech de Log", 'to': "g15@logitech.com" },
  10. {'name': "Don Corleone", 'to': "don@vegas.com" },
  11. {'name': "Mc Chick", 'to': "info@donalds.org" },
  12. {'name': "Donnie Darko", 'to': "dd@timeshift.info" },
  13. {'name': "Quake The Net", 'to': "webmaster@quakenet.org" },
  14. {'name': "Dr. Write", 'to': "write@writable.com" },]
  15. result = [item for item in result if item['name'].find(request.args['q']) >= 0]
  16. return jsonify(result)

5. 显示效果图

jQuery autocomplete 应用的更多相关文章

  1. jQuery AutoComplete 自动补全

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

  2. jquery autocomplete插件

    jquery autocomplete插件 https://goodies.pixabay.com/jquery/auto-complete/demo.html autocomplete-table ...

  3. jquery.autocomplete 模糊查询 支持分组

    //demo <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <lin ...

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

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

  5. jquery autocomplete实现读取sql数据库自动补全TextBox

    转自我本良人 原文 jquery autocomplete实现读取sql数据库自动补全TextBox 项目需要这样子一个功能,其他部门提的意见,只好去实现了哦,搞了好久才弄出来,分享一下. 1.前台页 ...

  6. Bootstrap Typeahead/Jquery autocomplete自动补全

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

  7. [Jquery] Jquery AutoComplete的使用方法实例

    jQuery的Autocomplete(自动完成.自动填充)插件 jquery-autocomplete配置: <script type="text/javascript" ...

  8. JQuery UI Autocomplete与jquery.autocomplete.js

    程序中要把一个select改成可以下拉搜索的,就想到了使用下autocomplete.js大概是这么个东西. 问了下同学,推荐我使用Jquery Ui autocomplete,下载下来开始调试使用, ...

  9. [转]jQuery.Autocomplete实现自动完成功能(详解)

    本篇文章除了介绍jquery.autocomplete基本参数外,主要说明jquery.autocomplete的数据源的格式问题.     1.jquery.autocomplete参考地址 htt ...

  10. jquery.autocomplete.js 插件的自定义搜索规则

    这二天开始用jquery.autocomplete这个自动完成插件.功能基本比较强大,但自己在实际需求中发现还是有一处不足!问题是这样:当我定义了一个本地数据JS文件时,格式为JSON式的数组.如下: ...

随机推荐

  1. bzoj1565【NOI2009】植物大战僵尸(最小割)

    题目描述 Plants vs. Zombies(PVZ)是最近十分风靡的一款小游戏.Plants(植物)和Zombies(僵尸)是游戏的主角,其中Plants防守,而Zombies进攻.该款游戏包含多 ...

  2. Win7下C/C++跨平台开发工具IDE的安装之CodeBlocks

    1. Win7下安装CodeBlocks: 下载带有mingw的CodeBlocks:http://www.codeblocks.org/downloads/26#windows 运行所下载程序: 点 ...

  3. 有关git的使用,和git的一些提交冲突。

    git 的一些基本用法 git init :初始化文件(创建文件夹). git add . :监控工作区的状态树(将被修改的文件提交到暂存区) git status :未跟踪状态(Untracked) ...

  4. postgresql中的各种scan的比较

    最近在看postgresql的查询计划,在查询中对表的扫描计划大概有如下几种: Seq Scan Index Scan Bitmap Heap Scan Index Only Scan 这里就把自己的 ...

  5. 使用vue-cli脚手架搭建项目,保存编译时出现的代码检查错误(ESLint)

    一.问题 出现这么写错误是什么原因呢?相信很多小白都会像我一样,第一次接触时有点二丈和尚摸不着头脑.其实是在你用vue-cli脚手架构建项目时用了ESLint代码检查工具,如下图 那么什么是ESLin ...

  6. 3、pandas

    原文出处: pandas.pydata.org   译文出处:石卓林 这是关于pandas的简短介绍,主要面向新用户.可以参阅Cookbook了解更复杂的使用方法. 链接:http://python. ...

  7. 黑马学习CSS之CSS模块化规范全部组成 CSS属性列表

  8. python xlwt 与 xlsxwriter 模块差别

    Xlwt 模块有一个bug, 就是所用样式过多的话,之后的数据将使用不了样式,相反xlsxwriter 模块 不会有此问题. 用Xlwt模块的同学们,请务必转换用xlsxwriter模块 !!!!!! ...

  9. javascript JSON. 转换 注意事项

    JSON.stringify() 会舍弃 方法..只有属性才会转换成 json 字符串,所以 用 JSON.stringify()=='{}' 来判断对象是否为空 是错误的!!!! 正确的做法 是  ...

  10. java.math.BigDecimal cannot be cast to java.lang.String

    从数据库总查询出的count(*) 函数统计的值,类型转换方法: Map<String,Integer> map = new HashMap<String,Integer>() ...