实现比较简单,说简单是因为有现成的控件可以依赖,要是从头开始实现这个控件的话确实比较麻烦,以前我做过一个做好的时候虽然勉强可以用,但是还是存在不少问题。
这个控件堪称完美,是利用jquery框剪实现的,废话少说,直接上代码吧。
主页面 index.jsp
<html>
<head>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="jquery.autocomplete.js"></script>
<style type="text/css"><!--
.autocomplete-w1 { background:url($manageModule.setTarget("/imgs/shadow.png")) no-repeat bottom right; position:absolute; top:0px; left:0px; margin:6px 0 0 6px; /* IE6 fix: */ _background:none; _margin:1px 0 0 0; }
.autocomplete { border:1px solid #999; background:#FFF; cursor:default; text-align:left; max-height:350px; overflow:auto; margin:-6px 6px 6px -6px; /* IE6 specific: */ _height:350px; _margin:0; _overflow-x:hidden; }
.autocomplete .selected { background:#F0F0F0; }
.autocomplete div { padding:2px 5px; white-space:nowrap; overflow:hidden; }
.autocomplete strong { font-weight:normal; color:#3399FF; }
-->
</style>
</head>
<body>
<input type="text" name="q" id="query" />
</body>
</html>
<script>
var reEscape = new RegExp('(\\' + ['/', '.', '*', '+', '?', '|', '(', ')', '[', ']', '{', '}', '\\'].join('|\\') + ')', 'g');
function fnFormatResult(value, data, currentValue) {
var pattern = '(' + currentValue.replace(reEscape, '\\$1') + ')';
return value.replace(new RegExp(pattern, 'gi'), '<strong>$1<\/strong>');
}
var options, a;
////////////////////////////////////////////
// $(document).ready(function() {
// $('#term').autocomplete({
// serviceUrl:'php/ajax/autosuggest.php',
// maxHeight:400,
// width:250,
// deferRequestBy: 20
// });
///////////////////////////////////////////
$(document).ready(function(){
options = { serviceUrl:'suggest.jsp',
onSelect: function(value, data){ alert('You selected: ' + value + ', ' + data);} };
// a = $('#query').autocomplete(options);
var a = $('#query').autocomplete({
serviceUrl:'suggest.jsp',
minChars:2,
delimiter: /(,|;)\s*/, // regex or character
maxHeight:400,
width:300,
zIndex: 9999,
deferRequestBy: 20, //miliseconds
noCache: true, //default is false, set to true to disable caching
// callback function:
onSelect: function(value, data){ alert('You selected: ' + value + ', ' + data); }
});
});
</script>
响应查询的jsp:suggest.jsp
{
query:'Li',
suggestions:['Liberia','Libyan Arab Jamahiriya','Liechtenstein','Lithuania'],
data:['LR','LY','LI','LT']
}
注意:执行这个demo的时候input控件中一定要填写“Li”,不然看不到效果。
分享到:
相关推荐
java与jQuery整合ajax仿googleSuggest自动补全实例,以返回的json格式的数据对象
jquery练习的例子,仿真google suggestjquery练习的例子,仿真google suggestjquery练习的例子,仿真google suggestjquery练习的例子,仿真google suggestjquery练习的例子,仿真google suggestjquery练习的例子,...
Jquery autocomplete 模糊搜索 模仿Google 百度,虽然说还是有些问题,不过已经很好了,使用.NET 与后台进行交互
jQuery-Suggest 是一个基于 jQuery 的 suggest 组件,它主要为 PC 端的搜索框提供建议词条。 为什么要做这个组件 我曾经做过一个基于 Zepto 简洁实用的 suggest 组件:。 这个组件稍微改造即可在 jQuery 下使用...
用AJAX实现类似GOOGLE搜索框的功能
JQuery插件Suggest来做那些机票预订网站中的输入智能提示功能,这个功能对于用户体验性来说,挺不错的,用于实现类似百度的智能提示功能也是一个不错的选择。
NULL 博文链接:https://lc2586.iteye.com/blog/731375
基于JQUERY的SUGGEST效果,自己写的
自动补全例子基于php 非常简单易用 jquery suggest 自动补全插件演示 自动补全 jquery自动补全 jquery 输入提示
google suggest 的实现,google suggest 的实现
NULL 博文链接:https://sxpujs.iteye.com/blog/411886
这是一个利用jQuery实现的自动填充插件。支持ID字段,支持为下拉条目添加缩略图和描述,支持选中条目时就提交表单。这个插件还提供了一个基于PHP的服务端实现。演示地址:http://www.jq22.com/jquery-info425
这也是一个整合hibernate与struts连接数据库的项目,利用jQuery实现界面布局,ajax发送请求,即获取数据,轻巧的jQuery只用了仅仅30行代码就完成模仿百度或Google的suggest的模块功能,而且还附加了双击事件和回车...
使用ajax技术实现的google suggest,功能和google一样。参照google制作。下载后解压文件,将SuggestServlet 放在src的com.huage.ajax.servlet包下,将suggest.jsp放在WebRoot的根目录下,运行suggest.jsp即可。本...
Google suggest, suggest,Google搜索引擎 MyEclipse 开发 tomcat发布
asp.net & ajax 实现 google suggest
google suggest 制作仿照phototype 中的返回接受html而不是字符串
AJAX实现类Google Suggest效果 *测试平台:Firefox2.0,IE6.0,IE7.0 *演示地址:http://www.okajax.com/demo/suggest/ *:文件结构: index.htm:首页,展现效果 ajax_result.asp:ajax调用后台返回结果文件 result.asp:...