jquery UI autocomplete 在获取焦点得到显示列表

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

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




	
	jQuery UI Autocomplete - Categories
	
	
	
	
	
	
	
	
	

		


 



A categorized search result. Try typing "a" or "n".



代码来源于官网例子,稍稍改动了一下,但貌似在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 就可以解决,但我就是没有测试成功.

上一篇: SPRING MVC 结合jquery autocomplete 与 json 的例子
下一篇: jquery 多个属性选择
 评论 ( What Do You Think )
名称
邮箱
网址
评论
验证
   
 

 


  • 微信公众号

  • 我的微信

站点声明:

1、一号门博客CMS,由Python, MySQL, Nginx, Wsgi 强力驱动

2、部分文章或者资源来源于互联网, 有时候很难判断是否侵权, 若有侵权, 请联系邮箱:summer@yihaomen.com, 同时欢迎大家注册用户,主动发布无版权争议的 文章/资源.

3、鄂ICP备14001754号-3, 鄂公网安备 42280202422812号