本文实例讲述了基于jquery实现的自动补全功能的方法。分享给大家供大家参考。具体实现方法如下:
$(function() { // 自动补全 var maxcount = 0;// 表示他最大的值 var thisCount =0;// 初始化他框的位置 $("body").prepend("<div style='width:120px; display:none; background:#FFFFFF; position: absolute;' id='autoTxt'></div>"); $("#sele").keyup(function(even) { var v = even.which; if (v == 38 || v == 40 || v == 13)// 当点击上下键或者确定键时阻止他传送数据 { return; } var txt = $("#sele").val();//这里是取得他的输入框的值 if (txt != "") { //拼装数据 $.ajax({ url : "Birthday_autoCompletion",//从后台取得json数据 type : "post", dataType : "json", data : {"bir.userName" : txt }, success : function(ls) { var offset = $("#sele").offset(); $("#autoTxt").show(); $("#autoTxt").css("top", (offset.top + 30) + "px"); $("#autoTxt").css("left", offset.left + "px"); var Candidate = ""; maxcount = 0;//再重新得值 $.each(ls, function(k, v) { Candidate += "<li id='" +maxcount+ "'>" + v + "</li>"; maxcount++; }); $("#autoTxt").html(Candidate); $("#autoTxt li:eq(0)").css("background", "#A8A5A5"); //高亮对象 $('body').highLight(); $('body').highLight($("#sele").val()); event.preventDefault(); //当单击某个LI时反映 $("#autoTxt li").click(function(){ $("#sele").val($("#autoTxt li:eq("+this.id+")").text()); $("#autoTxt").html(""); $("#autoTxt").hide(); }); //移动对象 $("#autoTxt li").hover(function(){ $("#autoTxt li").css("background", "#FFFFFF"); $("#autoTxt li:eq("+this.id+")").css("background", "#A8A5A5"); thisCount=this.id;},function(){ $("#autoTxt li").css("background", "#FFFFFF");}); }, error : function() { $("#autoTxt").html(""); $("#autoTxt").hide(); maxcount = 0; } }); } else { $("#autoTxt").hide(); maxcount = 0; $("#sestart").click(); } }); //当单击BODY时则隐藏搜索值 $("body").click(function(){ $("#autoTxt").html(""); $("#autoTxt").hide(); thisCount=0; }); // 写移动事件//上键38 下键40 确定键 13 $("body").keyup(function(even) { var v = even.which; if (v == 38)// 按上键时 { if(thisCount!=0){//等于零时则证明不能上了。所以获得焦点 $("#sele").blur(); if(thisCount>0) --thisCount; else thisCount=0; $("#autoTxt li").css("background", "#FFFFFF"); $("#autoTxt li:eq("+thisCount+")").css("background", "#A8A5A5"); }else{$("#sele").focus();} } else if (v == 40) {// 按下键时 if(thisCount<maxcount-1) { $("#sele").blur(); ++thisCount; $("#autoTxt li").css("background", "#FFFFFF"); $("#autoTxt li:eq("+thisCount+")").css("background", "#A8A5A5"); } } else if (v == 13) {// 按确认键时 var tt=$("#"+thisCount).text(); if(tt!="") { $("#sele").val(tt); $("#autoTxt").html(""); $("#autoTxt").hide(); }else { if($("#sele").val()!="") $("#sestart").click(); } } else { if($("#autoTxt").html()!="") { $("#sele").focus(); thisCount=0; } } }); });
希望本文所述对大家的jQuery程序设计有所帮助。
本文向大家介绍jquery css实现邮箱自动补全,包括了jquery css实现邮箱自动补全的使用技巧和注意事项,需要的朋友参考一下 今天在公司做一个电子商务网站的注册会员时,要求用户在电子邮箱文本框中输入时,给与热点提示常用的电子邮箱,帮助用户选择,提高体验效果。下面是用Jquery+css实现的邮箱自动补全,供大家参考和学习。 HTML代码:emailAutoComple.html JS
本文向大家介绍利用Redis如何实现自动补全功能,包括了利用Redis如何实现自动补全功能的使用技巧和注意事项,需要的朋友参考一下 忘了redis从哪个版本开启,能够根据输入的部分命令前缀给出提示,即自动补全。接下来笔者介绍基于redis实现这个很酷的功能。 about sorted set 假设结果中有mara,marabel,marcela。现在我们输入mar,就能得到这三个名字,并且输出结果
本文向大家介绍eclipse自动提示和自动补全功能实现方法,包括了eclipse自动提示和自动补全功能实现方法的使用技巧和注意事项,需要的朋友参考一下 解决代码的自动提示问题: 1、打开 Eclipse -> Window -> Perferences 2、找到Java 下的 Editor 下的 Content Assist , 右边出现的选项中,有一个Auto activation trigge
本文向大家介绍easyui-combobox 实现简单的自动补全功能示例,包括了easyui-combobox 实现简单的自动补全功能示例的使用技巧和注意事项,需要的朋友参考一下 前台: Html页面 JS 以上这篇easyui-combobox 实现简单的自动补全功能示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。
本文向大家介绍基于jQuery实现搜索关键字自动匹配功能,包括了基于jQuery实现搜索关键字自动匹配功能的使用技巧和注意事项,需要的朋友参考一下 今天我们就一起来看一个简单的基于jquery的关键字自动匹配的例子,希望文章能够对各位有帮助。 例子一 在项目中,有时候需要用户选择城市,但是城市太多,用户选择起来不太方便,所以提供了一个用户可以通过输入框输入城市的汉字或者拼音简写。结果示意图如下:
本文向大家介绍基于JQuery实现分隔条的功能,包括了基于JQuery实现分隔条的功能的使用技巧和注意事项,需要的朋友参考一下 在C/S系统中有专门的分隔条控件,很方便实现,但在Asp.net中却没有。本文介绍了一种使用JQuery技术实现分隔条的功能。 Javascript代码如下,将该代码保存成JS文件后在HTML中引用。 按以下步骤修改HTML文件: 1. 增加对JQuery和刚刚生成的j