近日学习了一下AJAX,照做了几个例子,感觉比较新奇。
第一个就是自动完成的功能即Autocomplete,具体的例子可以在这里看:http://www.b2c-battery.co.uk
在Search框内输入一个产品型号,就可以看见效果了。
这里用到了一个开源的代码:AutoAssist ,有兴趣的可以看一下。
以下为代码片断:
index.htm
<script type="text/javascript" src="javascripts/prototype.js"></script>
<script type="text/javascript" src="javascripts/autoassist.js"></script>
<link rel="stylesheet" type="text/css" href="styles/autoassist.css"/>
<div>
<input type="text" name="keyword" id="keyword"/>
<script type="text/javascript">
Event.observe(window, "load", function() {
var aa = new AutoAssist("keyword", function() {
return "forCSV.php?q=" + this.txtBox.value;
});
});
</script>
</div>
不知道为什么不能用keywords做文本框的名字,我试了很久,后来还是用keyword,搞得还要修改原代码。
forCSV.php
<?php
$keyword = $_GET['q'];
$count = 0;
$handle = fopen("products.csv", "r");
while (($data = fgetcsv($handle, 1000)) !== FALSE) {
if (preg_match("/$keyword/i", $data[0])) {
if ($count++ > 10) { break; }
?>
<div onSelect="this.txtBox.value='<?php echo $data[0]; ?>';">
<?php echo $data[0]; ?>
</div>
<?php
}
}
fclose($handle);
if ($count == 0) {
?>
: (, nothing found.
<?php
}
?>
原来的例子中的CSV文件是根据\t来分隔的,我们也可以用空格或其它的来分隔,这取决于你的数据结构。
当然你也可以不读文件,改从数据库里读资料,就不再废话了。
效果图如下:

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=635858
<link href="http://blog.csdn.net/jxyuhua/Services/Pingback.aspx" rel="pingback">
<!--<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"xmlns:dc="http://purl.org/dc/elements/1.1/"xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"><rdf:Descriptionrdf:about="http://blog.csdn.net/jxyuhua/archive/2006/03/23/635858.aspx"dc:identifier="http://blog.csdn.net/jxyuhua/archive/2006/03/23/635858.aspx"dc:title="Ajax自动完成功能"trackback:ping="http://tb.blog.csdn.net/TrackBack.aspx?PostId=635858" /></rdf:RDF>--><script><![CDATA[unction hide(){showComment();}]]></script>
分享到:
相关推荐
在网页应用中,AJAX自动完成功能通常用于提升用户体验,比如在用户输入时,后台实时搜索匹配数据并显示在输入框下方,常见的应用场景如搜索引擎、表单字段填充等。这种功能可以显著减少用户输入的时间,提高数据输入...
在网页开发中,实现“仿Google搜索”的AJAX自动完成功能是一项常见的需求。这个功能使得用户在输入搜索关键词时,无需点击搜索按钮,就能即时看到包含该关键词的相关搜索建议,极大地提升了用户体验。这里我们将深入...
ajax-chosen, 添加了ajax自动完成功能的jQuery库的补充 选择的ajax这个项目是出色的插件插件插件,使HTML输入表单更加友好。 选择向 select 元素添加搜索框,所以我觉得它可以在awesomely动态表单中添加ajax自动完成...
这个文件名暗示了压缩包中可能包含实现AJAX自动完成功能的代码示例、教程或库。可能包括HTML文件用于展示前端界面,JavaScript文件用于处理AJAX请求和DOM操作,以及C#代码文件处理服务器端逻辑。 在实现AJAX自动...
描述:“一个效果非常炫的AJAX自动完成功能,还支持分页,很漂亮” 标签:“AJAX”,“AJAX自动完成” 在这个主题中,我们将深入探讨AJAX(Asynchronous JavaScript and XML)自动完成功能,这是一种在网页中提供...
jQuery的Ajax自动完成jQuery的Ajax自动完成功能使您可以轻松地为文本输入字段创建自动完成功能/自动建议框。 除jQuery外,它没有其他依赖项。 缩小后,标准的jquery.autocomplete.js文件约为13KB。API 以下内容为...
【Ajax自动完成技术详解】 Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。...理解并掌握这些知识点,你就能创建一个高效、用户友好的Ajax自动完成功能。
### AJAX自动完成功能JS封装源码解析与中文支持详解 #### 一、概述 本文将详细介绍一个基于AJAX技术实现的自动完成功能的JavaScript封装源码,并着重讨论其如何支持中文输入的问题。该封装源码适用于Web开发中常见...
【Ajax自动完成技术详解】 Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。这种技术使得用户可以与网页进行更流畅、更快捷的交互,提高了用户体验。在本...
在本案例中,标题和描述指出Ajax自动完成功能存在问题,无法正常运行,并提供了下载链接以获取相关代码资源。 首先,我们来理解Ajax自动完成的基本原理。它通常包括以下几个关键步骤: 1. **前端交互**:用户在...
通过以上步骤,我们完成了基于Struts2框架的Ajax自动补全功能的实现。这种实时反馈的方式极大地提升了用户的搜索体验,同时也让开发者能够更加灵活地处理各种前后端交互需求。在未来的发展中,随着前端技术和框架的...
帮助用户快速的进行搜索,这类功能成为自动完成功能,这个功能目前在很多软件中实现,而web程序程序只能通过浏览器自身实现. 看完本项目,你将学习到如何实现基于ajax的自动完成功能,项目使用的是vs2003 ....
看完本项目,你将学习到如何实现基于ajax的自动完成功能,本项目使用的是vs2003开发,直接解压到IIS目录下. 补充说明: 在上次项目的基础上进行的更新,把自动完成功能和textbox控件结合起来,成为一个自定义控件,...
1. **Ajax自动补全的基本原理**:自动补全功能通常用于搜索框或输入字段,当用户输入字符时,服务器会实时返回匹配的数据,这些数据可以是建议的搜索词、用户列表或其他相关信息。Ajax通过异步请求在后台处理这些...
总结来说,这个项目提供了一个实用的示例,展示了如何利用Ajax、JSP和Servlet技术实现一个无数据库的自动完成功能,对于学习和理解这些技术的应用有很好的参考价值。开发者可以通过研究这个源代码,学习到如何在实际...
通过查看和分析DEMO,可以更深入理解Ajax自动完成的实现过程。 总之,Ajax技术极大地增强了网页的交互性,使得用户无需等待整个页面刷新即可获取反馈。自动完成是Ajax应用的一个经典示例,它利用实时的数据查询和...
标题 "Ajax+JSON 搜索框自动完成提示功能" 涉及的是网页开发中的一个常见技术,用于提高用户输入体验。...开发者可以参考这个项目来理解如何结合Ajax和JSON在实际应用中实现搜索框的自动完成功能。
“GoogleSuggest”是Google提供的一种自动完成功能的典范,当用户在Google搜索框中输入关键词时,它会实时提供相关的搜索建议。这个功能不仅仅依赖于Ajax技术,还涉及到服务器端的数据处理和算法优化,以便在短时间...
AjaxControlToolkit是一个开源的ASP.NET库,提供了许多易于使用的控件和行为,包括AutoCompleteExtender,就是我们讨论的自动完成功能。这个工具包扩展了ASP.NET AJAX Framework的功能,使得开发者能够方便地在Web...