`

仿百度、Google的suggest特效功能,源码分析

阅读更多

1.简单的模仿效果图





 

2.项目分析及总结

项目描述:Hibernate+struts+jQuery+ajax+mysql

这也是一个整合hibernate与struts连接数据库的项目,利用jQuery实现界面布局,ajax发送请求,即获取数据,轻巧的jQuery只用了仅仅30行代码就完成模仿百度或Google的suggest的模块功能,而且还附加了双击事件和回车事件;下面附上核心源码,源码中有详细的注释。

转载请注明出处:杨凯专属频道

这里只附上核心js代码和struts代码,更多源码可以去资源模块下载,本人已免费上传至:tianyazaiheruan

3.核心代码

$(document).ready(
		function() {

			// 给input输入框注册keyup键盘点击事件
			$("#keyWord").bind(
					"keyup",
					function() {
						// 获取输入的值
						var keyVal = $(this).val();
						// 判断如果输入框为空时,清空隐藏select并返回,不再执行以下代码
						if ("" == keyVal) {
							// 清空并隐藏select框
							$("#words").empty().hide(); // 对象链式操作,jQuery的特性
							return;
						}

						// 发送ajax请求
						$.post("./csdn/UserAction_keyVals.action?time="
								+ new Date().getTime(), {
							keyWord : keyVal
						}, function(data) {
							// 清空
							$("#words").empty();
							// 获取相关的属性
							var jsonUsers = data.users;
							for ( var i = 0; i < jsonUsers.length; i++) {
								// 得到具体的user对象
								var jsonUser = jsonUsers[i];
								// 创建option
								var $opt = $("<option></option>");
								$opt.text(jsonUser.name);
								// 把创建的opt添加到select中
								$("#words").append($opt).show();
							}
						}, "json");

						// 为select框注册双击事件
						$("#words").bind("dblclick", function() {
							// 为input框设值
							$("#keyWord").val($(this).val());
							$("#words").empty().hide();
						});

						// 为select框注册回车事件
						$("#words").bind("keyup", function(event) {
							// 按键13为回车键
							if (event.which == 13) {
								$("#keyWord").val($(this).val());
								$("#words").empty().hide();
							}
						});

					});
		});
Struts.Xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
	<include file="www/csdn/project/resource/struts-constant.xml" />

	<package name="test" namespace="/csdn" extends="json-default">

		<action name="UserAction_*" class="www.csdn.project.action.UserAction"
			method="{1}">

			<result name="checkName" type="json">
				<param name="root">msg</param>
				<!-- <param name="includeProperties">msg</param> -->
			</result>

			<result name="keyVals" type="json">
				<param name="includeProperties">users\[\d+\]\.name</param>
			</result>
			<result name="input">/index.jsp</result>

		</action>

	</package>
</struts>

 

分享到:
评论

相关推荐

    仿GoogleSuggest自动补全的功能

    本教程将详细讲解如何实现一个仿GoogleSuggest的自动补全功能,旨在提供一个绝对实用的解决方案。 首先,理解GoogleSuggest的工作原理至关重要。它基于用户在搜索框中输入的字符,实时从服务器端获取并展示可能的...

    AJAX学习总结(九)---Jquery实例:仿googlesuggest自动补全功能

    在本文中,我们将深入探讨AJAX技术在JavaScript库jQuery中的应用,特别是通过一个实战案例——仿谷歌搜索建议(Google Suggest)的自动补全功能。这个功能广泛应用于各种搜索框,能够极大地提升用户体验,使用户在...

    vs2010仿google suggest功能案例

    利用Visual Studio 2010和SQLserver2008基于net framework 4开发的类似google suggest自动完成功能代码。 可以使用上下键进行选择回车键选定,也可以使用鼠标点击选定。 默认是查询的系统数据库的一张表,使用时请...

    ajax仿google suggest 数据库版

    **Ajax仿Google Suggest数据库版**是基于Ajax技术实现的一种搜索建议功能,它模拟了Google搜索引擎在用户输入关键字时实时显示搜索建议的效果。这个项目主要使用Java作为后端语言,结合Ajax技术,为前端用户提供流畅...

    仿真google suggest的自定义js文件

    仿真google suggest的自定义js文件仿真google suggest的自定义js文件仿真google suggest的自定义js文件仿真google suggest的自定义js文件仿真google suggest的自定义js文件仿真google suggest的自定义js文件仿真...

    仿google-suggest

    "仿google-suggest"是一个基于Ajax技术实现的功能,旨在模仿谷歌搜索建议的交互体验。在网页搜索中,谷歌提供了一种便捷的用户体验,即当用户在搜索框输入时,会实时显示与输入内容相关的建议搜索词。这个功能利用了...

    仿Google Suggest提示效果

    【标题】"仿Google Suggest提示效果"是一个关于在网页中实现类似Google搜索框自动提示功能的技术分享。这种功能在现代网页应用中非常常见,它能够提升用户体验,帮助用户更快地找到他们想要输入的关键词。 【描述】...

    仿google+suggest 自动完成程序

    【标题】"仿google suggest 自动完成程序"是一款基于AJAX、Access数据库和ASP.NET技术构建的应用,旨在模仿谷歌搜索引擎的自动建议功能。这个程序的主要目的是为那些正在学习AJAX技术的开发者提供一个实践和参考的...

    jquery练习的例子,仿真google suggest

    jquery练习的例子,仿真google suggestjquery练习的例子,仿真google suggestjquery练习的例子,仿真google suggestjquery练习的例子,仿真google suggestjquery练习的例子,仿真google ...仿真google suggest dd

    AJAX实现仿Google Suggest搜索提示效果

    在本文中,我们将深入探讨如何使用AJAX技术来实现一个仿Google Suggest的搜索提示功能。Google Suggest是Google搜索引擎中的一个特色功能,它在用户输入关键词时提供实时的搜索建议,极大地提高了搜索效率和用户体验...

    仿百度搜索功能附带数据库 java+jsp

    在IT领域,构建一个搜索引擎是复杂且技术性强的...总的来说,"仿百度搜索功能附带数据库 java+jsp"项目是一个结合了前端交互、后端处理和数据库操作的综合实践,可以帮助开发者提升对Java Web应用开发的理解和技能。

    Flex实现仿Googlesuggest

    通过以上步骤,我们可以成功地使用Flex 3.0实现一个仿Google Suggest的自动完成功能。这个过程涵盖了Flex的组件开发、数据绑定、异步通信、事件处理等多个核心概念,对于提升Flex开发技能大有裨益。在实际项目中,还...

    js实现仿Google Suggest搜索提示效果

    好东西能用,我经常用!大家共享!

    仿google suggest

    【标题】:“仿google suggest”通常指的是模仿谷歌自动补全功能的技术实现,它是一种智能搜索建议技术,旨在提高用户在搜索引擎中的输入效率和搜索体验。谷歌的自动补全功能可以根据用户在搜索框中输入的部分关键词...

    google suggest 的实现

    ### Google Suggest 实现原理与关键技术 #### 一、引言 Google Suggest 是一项能够...通过上述分析,我们可以看到 Google Suggest 技术的核心在于实时性和高效率的搜索建议生成机制,这对于现代搜索引擎而言至关重要。

    仿google baidu的suggest实现

    使用ajax技术实现的google suggest,功能和google一样。参照google制作。下载后解压文件,将SuggestServlet 放在src的com.huage.ajax.servlet包下,将suggest.jsp放在WebRoot的根目录下,运行suggest.jsp即可。本...

    仿googlesuggest.rar

    标题 "仿googlesuggest.rar" 暗示了一个项目,其目标是模仿Google的自动补全功能,也就是Google Suggest。这个功能在用户输入搜索词时,会实时提供可能的搜索建议,提升搜索效率。该项目基于ASP(Active Server ...

    jquery实例5:仿Google Suggest自动补齐

    总结来说,实现一个 jQuery 仿 Google Suggest 功能,我们需要关注以下几个关键点: 1. 监听输入事件并延迟发送请求。 2. 使用 AJAX 与服务器进行异步通信。 3. 在前端动态生成并更新建议列表。 4. 添加适当的样式和...

Global site tag (gtag.js) - Google Analytics