- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
AJAX打造博客无刷新搜索
如果你对AJAX不是很了解,可以先看看这篇教程:《AJAX初体验之上手篇》。
现在博客很流行,相信应该上网时间稍微长点的朋友都会在这或者在那的有一个自己的博客。对于一些有一定能力的朋友,可能更喜欢自己去下载一个博客程序来架设一个自己的博客,而不是使用一些博客网站提供的服务。而大部分博客程序所带的搜索功能是提交查询关键字到搜索页面,然后在后台生成搜索结果,再呈现给用户,这过程之中浪费了一些带宽,如博客的侧边栏。要节约这一些带宽,我们可以用AJAX来打造自己的无刷新日志搜索。
在本篇教程中,数据库的表名和日志查看页面以L-Blog为例,因为我的博客程序是从L-Blog修改而来。
本教程中的例子已经通过实际测试,可以直接在L-Blog或FBS中使用。当然,要真正应用的话还是需要做一些美化及完善的。
在数据库中日志内容数据表名为blog_Content,其中日志ID为log_ID,日志标题为log_Title,日志查看页面为blogview.asp,参数为日志logID。有了这些资料,就可以开始创建搜索结果的XML文档模板了。在显示搜索结果时,需要显示日志的标题,以及日志的ID来创建到查看日志的链接。
搜索结果模板sample.xml
CODE:?xml version=1.0 encoding=utf-8?blogsearch??? !-- 每一个reslut就是一个搜索结果 --??? result??????? !-- 日志的ID --??????? logid1/logid??????? !-- 日志的标题 --??????? logtitleAJAX初体验之上手篇/logtitle??? /result/blogsearch
每个result就是一个搜索结果,为了处理没有找到相关内容的情况,我定义了当搜索结果为空时logid为#。在完成XML文档模板之后,就可以用ASP来动态生成搜索结果需要的XML文档了。搜索的关键字采用POST方式来传递。
搜索结果输出ajaxsearch.asp
CODE:!-- #include file=commond.asp --!-- #include file=include/function.asp --% commond.asp为数据库连接文件 function.asp中有要用到的函数CheckStrDim Search_Word,XML_Result,rsSearch,sqlSearchSet rsSearch=Server.CreateObject(ADODB.RecordSet) 获取搜索关键字Search_Word=CheckStr(Trim(Request.Form(searchword))) XML文档头XML_Result=?xml version=1.0 encoding=utf-8?blogsearchIF Search_WordEmpty Then??? 创建查询SQL语句??? sqlSearch=SELECT log_ID,log_Title,log_Content FROM blog_Content WHERE log_Title LIKE %Search_Word% AND log_IsShow=True ORDER BY log_ID DESC ??? 打开记录集??? rsSearch.open sqlSearch,Conn,1,1??? 如果没有搜索结果就产生一个结果,logid为#,标志着没有搜索结果??? IF rsSearch.BOF AND rsSearch.EOF Then XML_Result=XML_Resultresultlogid#/logidlogtitle //result ??? 循环输出搜索结果??? Do While Not rsSearch.EOF??????? 循环输出每一个结果??????? XML_Result=XML_ResultresultlogidrsSearch(log_ID)/logidlogtitle![CDATA[rsSearch(log_Title)]]/logtitle/result ? ??????? rsSearch.MoveNext??? LoopElse??? 关键字为空,则返回无搜索结果??? XML_Result=XML_Resultresultlogid#/logidlogtitle //resultEnd IFXML_Result=XML_Result/blogsearch 设置MIME Type为XML文档Response.ContentType = appli
您可能关注的文档
最近下载
- 新款GC9790II型色谱仪说明书.pdf VIP
- 2025山东省环保发展集团有限公司业务中心及双碳业务板块招聘笔试模拟试题及答案解析.docx VIP
- 标准图集-04G101-3 筏形基础.PDF VIP
- (高清版)B-T 4798.3-2023 环境条件分类 环境参数组分类及其严酷程度分级 第3部分:有气候防护场所固定使用.pdf VIP
- 高中英语教学竞赛公开课、高考复习课件——2025年高考新课标一卷读后续写详析及参考范文专项课件.pptx VIP
- 安装工培训课件.pptx VIP
- 西安航空学院辅导员招聘考试备考真题题库汇编.pdf VIP
- 《蒸汽管道竣工全套资料表格》.docx VIP
- 《油气储存企业安全风险评估细则(2025年修订版)》解读与培训.pptx VIP
- 上海市交通大学附属中学2021届高三9月开学考试英语试题.docx VIP
文档评论(0)