jquery UI实现autocomplete在获取焦点时得到显示列表功能示例


Posted in jQuery onJune 04, 2019

本文实例讲述了jquery UI实现autocomplete在获取焦点时得到显示列表功能。分享给大家供大家参考,具体如下:

在做项目的时候,客户有这样的需求,将以前输入过的内容,在某个文本框上用列表的形式提示出来,可以选择,换言之,就如同我们用谷歌搜索,或者百度搜索一样,输入一些关键词,会自动提示,这个功能就叫autocomplete. 当然在 jquery  UI  下有 插件,具体下载的地方,搜索就知道了。重点是,我现在的用法,是需要在文本框获取焦点的时候,就弹出待选择的列表。而传统的是必须在输入文字之后才出现。经过发现,jquery ui autocomplete 用如下方法可以实现

<!doctype html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <title>jQuery UI Autocomplete - Categories</title>
 <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css" rel="external nofollow" >
 <script src="../../jquery-1.9.1.js"></script>
 <script src="../../ui/jquery.ui.core.js"></script>
 <script src="../../ui/jquery.ui.widget.js"></script>
 <script src="../../ui/jquery.ui.position.js"></script>
 <script src="../../ui/jquery.ui.menu.js"></script>
 <script src="../../ui/jquery.ui.autocomplete.js"></script>
 <link rel="stylesheet" href="../demos.css" rel="external nofollow" >
 <style>
 .ui-autocomplete-category {
  font-weight: bold;
  padding: .2em .4em;
  margin: .8em 0 .2em;
  line-height: 1.5;
 }
 </style>
 <script>
  var data = [
   { label: "anders", category: "" },
   { label: "andreas", category: "" },
   { label: "antal", category: "" },
   { label: "annhhx10", category: "Products" },
   { label: "annk K12", category: "Products" },
   { label: "annttop C13", category: "Products" },
   { label: "anders andersson", category: "People" },
   { label: "andreas andersson", category: "People" },
   { label: "andreas johnson", category: "People" }
  ];
  function dynamicAutocomplete(){
   $("#search").autocomplete({
    delay:200,
    autoFocus: false,
   source: data,
   minLength: 0,
   }).focus(function () {
    $(this).autocomplete("search");
   });
  }
 </script>
</head>
<body>
<button onclick="dynamicAutocomplete()">autocomplete</button> <br />
<label for="search">Search: </label>
<input id="search">
<div class="demo-description">
<p>A categorized search result. Try typing "a" or "n".</p>
</div>
</body>
</html>

代码来源于官网例子,稍稍改动了一下,但貌似在IE 下有点问题,选择某个选项之后,这个列表框不消失,还一直存在,比较郁闷。

在google 上搜索了一下,发现了一篇文章,也讲到了这个问题。后来用如下方法解决,不过是失去焦点的方式做的。

function dynamicAutocomplete(){
   $("#search").autocomplete({
   minLength: 0,
   source: data,
    focus :function () {
     return false;
    },
    select: function(event, ui){
    $this = $(this);
   setTimeout(function () {
    $this.blur();
    }, 1);
   }
   }).focus(function(){
     $(this).autocomplete("search");
     return false;
   }
  );
 };

在ie 下面用了timeout 来解决,在网上看到很多人说,在focus  方法中 return false 就可以解决,但我就是没有测试成功.

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jQuery实现radio第一次点击选中第二次点击取消功能
May 15 jQuery
jquery网页加载进度条的实现
Jun 01 jQuery
jQuery实现拖动效果的实例代码
Jun 25 jQuery
jquery tmpl模板(实例讲解)
Sep 02 jQuery
jQuery实现html双向绑定功能示例
Oct 09 jQuery
jQuery+ajax实现动态添加表格tr td功能示例
Apr 23 jQuery
jQuery实现的点击显示隐藏下拉菜单功能完整示例
May 17 jQuery
jQuery实现form表单基于ajax无刷新提交方法实例代码
Nov 04 jQuery
高效jQuery选择器的5个技巧实例分析
Nov 26 jQuery
JQuery事件委托(适用于给动态生成的脚本元素添加事件)
Feb 01 jQuery
jQuery插件simplePagination的使用方法示例
Apr 28 jQuery
jQuery实现移动端图片上传预览组件的方法分析
May 01 jQuery
javascript异步处理与Jquery deferred对象用法总结
Jun 04 #jQuery
一文快速了解JQuery中的AJAX
May 31 #jQuery
jQuery实现动态加载(按需加载)javascript文件的方法分析
May 31 #jQuery
jQuery模拟html下拉多选框的原生实现方法示例
May 30 #jQuery
JS拖动选择table里的单元格完整实例【基于jQuery】
May 28 #jQuery
jquery实现Ajax请求的几种常见方式总结
May 28 #jQuery
jquery操作select常见方法大全【7种情况】
May 28 #jQuery
You might like
Syphon 秘笈
2021/03/03 冲泡冲煮
php绘图中显示不出图片的原因及解决
2014/03/05 PHP
Yii2针对指定url的生成及图片等的引入方法小结
2016/07/18 PHP
tp5框架基于ajax实现异步删除图片的方法示例
2020/02/10 PHP
JS获取IUSR_机器名和IWAM_机器名帐号的密码
2006/12/06 Javascript
ASP.NET jQuery 实例6 (实现CheckBoxList成员全选或全取消)
2012/01/13 Javascript
jQuery中ajax的load()方法用法实例
2014/12/26 Javascript
js实现简单锁屏功能实例
2015/05/27 Javascript
轻松掌握JavaScript策略模式
2016/08/25 Javascript
Ztree新增角色和编辑角色回显问题的解决
2016/10/25 Javascript
xmlplus组件设计系列之路由(ViewStack)(7)
2017/05/02 Javascript
浅谈vue,angular,react数据双向绑定原理分析
2017/11/28 Javascript
javascript实现获取一个日期段内每天不同的价格(计算入住总价格)
2018/02/05 Javascript
浅谈VUE-CLI脚手架热更新太慢的原因和解决方法
2018/09/28 Javascript
layui radio单选限制下一个radio单选的实例
2019/09/03 Javascript
[05:42]DOTA2英雄梦之声_第10期_蝙蝠骑士
2014/06/21 DOTA
python实现自动登录人人网并访问最近来访者实例
2014/09/26 Python
Python实现向QQ群成员自动发邮件的方法
2014/11/19 Python
python批量复制图片到另一个文件夹
2018/09/17 Python
Numpy截取指定范围内的数据方法
2018/11/14 Python
Python字典遍历操作实例小结
2019/03/05 Python
10招!看骨灰级Pythoner玩转Python的方法
2019/04/15 Python
Django 多表关联 存储 使用方法详解 ManyToManyField save
2019/08/09 Python
Python 矩阵转置的几种方法小结
2019/12/02 Python
pytorch使用 to 进行类型转换方式
2020/01/08 Python
python 使用elasticsearch 实现翻页的三种方式
2020/07/31 Python
python绘制分布折线图的示例
2020/09/24 Python
Django URL参数Template反向解析
2020/11/24 Python
python爬虫基础之urllib的使用
2020/12/31 Python
为什么在使用动态 SQL 语句时必须为低层数据库对象授予权限
2012/12/13 面试题
群众路线党课主持词
2014/04/01 职场文书
关爱留守儿童标语
2014/06/18 职场文书
留学推荐信英文范文
2015/03/26 职场文书
教师师德承诺书2016
2016/03/25 职场文书
Go 语言结构实例分析
2021/07/04 Golang
JAVA 线程池(池化技术)的实现原理
2022/04/28 Java/Android