亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > AJAX初體驗之實戰(zhàn)篇——打造博客無刷新搜索

AJAX初體驗之實戰(zhàn)篇——打造博客無刷新搜索

熱門標簽:遼寧銀行智能外呼系統(tǒng) 許昌智能電銷機器人公司 辰溪地圖標注 姜堰電銷機器人 澳大利亞城市地圖標注 海南銀行智能外呼系統(tǒng)商家 遼寧正規(guī)電銷機器人 上海浦東騰訊地圖標注位置 電銷機器人違法了嗎

如果你對AJAX不是很了解,可以先看看這篇教程的前篇《AJAX初體驗之上手篇》。

現(xiàn)在博客很流行,相信應該上網時間稍微長點的朋友都會在這或者在那的有一個自己的博客。對于一些有一定能力的朋友,可能更喜歡自己去下載一個博客程序來架設一個自己的博客,而不是使用一些博客網站提供的服務。而大部分博客程序所帶的搜索功能是提交查詢關鍵字到搜索頁面,然后在后臺生成搜索結果,再呈現(xiàn)給用戶,這過程之中浪費了一些帶寬,如博客的側邊欄。要節(jié)約這一些帶寬,我們可以用AJAX來打造自己的無刷新日志搜索。

在本篇教程中,數(shù)據(jù)庫的表名和日志查看頁面以L-Blog為例,因為我的博客程序是從L-Blog修改而來^_^。

本教程中的例子已經通過實際測試,可以直接在L-Blog或FBS中使用。當然,要真正應用的話還是需要做一些美化及完善的。

在數(shù)據(jù)庫中日志內容數(shù)據(jù)表名為blog_Content,其中日志ID為log_ID,日志標題為log_Title,日志查看頁面為blogview.asp,參數(shù)為日志logID。有了這些資料,就可以開始創(chuàng)建搜索結果的XML文檔模板了。在顯示搜索結果時,需要顯示日志的標題,以及日志的ID來創(chuàng)建到查看日志的鏈接。
搜索結果模板sample.xml

復制代碼 代碼如下:

?xml version="1.0" encoding="utf-8"?>
blogsearch> 
    !-- 每一個reslut就是一個搜索結果 --> 
    result> 
        !-- 日志的ID --> 
        logid>1/logid> 
        !-- 日志的標題 --> 
        logtitle>AJAX初體驗之上手篇/logtitle> 
    /result>
/blogsearch>

每個result就是一個搜索結果,為了處理沒有找到相關內容的情況,我定義了當搜索結果為空時logid為#。

在完成XML文檔模板之后,就可以用ASP來動態(tài)生成搜索結果需要的XML文檔了。搜索的關鍵字采用POST方式來傳遞。
搜索結果輸出ajaxsearch.asp

復制代碼 代碼如下:

!-- #include file="commond.asp" -->

!-- #include file="include/function.asp" -->

%

' commond.asp為數(shù)據(jù)庫連接文件

' function.asp中有要用到的函數(shù)CheckStr

Dim Search_Word,XML_Result,rsSearch,sqlSearch

Set rsSearch=Server.CreateObject("ADODB.RecordSet")

' 獲取搜索關鍵字

Search_Word=CheckStr(Trim(Request.Form("searchword")))

' XML文檔頭

XML_Result="?xml version=""1.0"" encoding=""utf-8""?>blogsearch>"

IF Search_Word>Empty Then

    ' 創(chuàng)建查詢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_Result"result>logid>#/logid>logtitle />/result>" 

    End IF

    ' 循環(huán)輸出搜索結果

    Do While Not rsSearch.EOF

        XML_Result=XML_Result"result>logid>"rsSearch("log_ID")"/logid>logtitle>![CDATA["rsSearch("log_Title")"]]>/logtitle>/result>"  ' 循環(huán)輸出每一個結果

        rsSearch.MoveNext

    Loop

Else

    ' 關鍵字為空,則返回無搜索結果

    XML_Result=XML_Result"result>logid>#/logid>logtitle />/result>"

End IF

XML_Result=XML_Result"/blogsearch>"

' 設置MIME Type為XML文檔

Response.ContentType = "application/xml"

'Response.CharSet = "utf-8"

' 輸出搜索結果

Response.Write(XML_Result)

%>

有了后臺搜索結果輸出的部分,就可以開始寫前臺搜索的部分了。
首先需要的是給用戶輸入搜索關鍵字及顯示搜索結果的地方,我用div來分別顯示這兩個部分:
ajaxsearch.htm
復制代碼 代碼如下:

!-- 要用到JavaScript,外部鏈入 -->

script type="text/javascript" src="ajaxsearch.js">/script>

!-- 用戶輸入部分 -->

div>

    !-- 因為沒有用form,所以要處理input的keydown事件。在用戶按下回車后搜索 -->

    input type="text" id="searchword" onkeydown="if(event.keyCode==13) AjaxSearch();" /> 

    !-- 搜索按鈕 -->

    input type="button" onclick="AjaxSearch();" value="搜索" />

/div>

!-- 搜索結果顯示部分 -->

div id="search_result">

    !-- 初始時提示用戶輸入搜索關鍵字 -->

    ul>li>請輸入關鍵字/li>/ul>

/div>



完成了用戶輸入及結果輸出的部分,就可以開始寫最后的部分——客戶端程序了。

首先是創(chuàng)建XMLHttpRequest對象,這部分代碼不再多說,對AJAX稍有接觸應該都看得懂這段代碼,前篇教程中也有詳細注釋:

復制代碼 代碼如下:

var xmlObj = false;
var xmlResult;
try {
    xmlObj=new XMLHttpRequest;
}
catch(e) {
    try {
        xmlObj=new ActiveXObject("MSXML2.XMLHTTP");
    }
    catch(e2) {
        try {
            xmlObj=new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch(e3) {
            xmlObj=false;
        }
    }
}
if (!xmlObj) {
    alert("XMLHttpRequest init Failed!");
}

function AjaxSearch() {
 var searchword;
 searchword=escape(document.getElementById("searchword").value);
 if(searchword=="") {
  document.getElementById("search_result").innerHTML="ul>li>請輸入關鍵字!/li>/ul>";
  return;
 }
 document.getElementById("search_result").innerHTML="ul>li>正在加載,請稍候/li>/ul>";
 xmlObj.open ("POST", "ajaxsearch.asp", true);
 xmlObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
 xmlObj.onreadystatechange=function() {
  if(xmlObj.readyState==4) {
   if(xmlObj.status==200) {
    xmlResult=xmlObj.responseXML;
    AjaxShowResult();
   }
  }
 }
 xmlObj.send("searchword="+searchword);
}

function AjaxShowResult() {
 var results,i,strTemp;
 results=xmlResult.getElementsByTagName("result");
 strTemp="ul>";
 if(results[0].getElementsByTagName("logid")[0].firstChild.data=="#")
  strTemp=strTemp+"li>無搜索結果/li>";
 else
  for(i=0;iresults.length;i++)
   strTemp = strTemp + "li>a href='blogview.asp?logID=" + results[i].getElementsByTagName("logid")[0].firstChild.data + "'>" + results[i].getElementsByTagName("logtitle")[0].firstChild.data + "/a>/li>";
 strTemp=strTemp+"/ul>";
 document.getElementById("search_result").innerHTML = strTemp
}



至此,一個完整的AJAX實例完成了。

幾個經驗:

1. 頁面使用UTF-8編碼,這樣可以省卻很多煩惱

2. 在獲取搜索結果時,因為用的getElementsByTagName,返回的是一個集合,所以要在結果之后加上下標,如例子中的:

    results[i].getElementsByTagName("logid")[0].firstChild.data

3. 建議使用document.getElementById()來獲取對象,而不要使用document.all這樣的方法

參考資料:

1. 《AJAX初體驗之上手篇》

2. 發(fā)布三個ajax相關的函數(shù),包括無刷新提交表單等

下載文件 實例中的三個文件打包下載

標簽:深圳 西藏 威海 晉城 伊春 崇左 銅川 撫州

巨人網絡通訊聲明:本文標題《AJAX初體驗之實戰(zhàn)篇——打造博客無刷新搜索》,本文關鍵詞  AJAX,初,體驗,之,實戰(zhàn),篇,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《AJAX初體驗之實戰(zhàn)篇——打造博客無刷新搜索》相關的同類信息!
  • 本頁收集關于AJAX初體驗之實戰(zhàn)篇——打造博客無刷新搜索的相關信息資訊供網民參考!
  • 推薦文章
    九九九国产| 日本免费区| 91麻豆精品国产片在线观看| 精品久久久久久中文字幕一区| 国产视频一区二区在线观看| 久久精品免视看国产明星| 亚洲精品中文字幕久久久久久| 欧美另类videosbestsex久久| 国产精品自拍亚洲| 国产伦久视频免费观看 视频| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 韩国毛片| 国产视频网站在线观看| 欧美一区二区三区性| 台湾美女古装一级毛片| 国产精品免费久久| 亚洲第一页乱| 久久国产精品自线拍免费| 日韩av成人| 精品久久久久久中文字幕2017| 欧美另类videosbestsex视频 | 成人高清视频在线观看| 久久精品欧美一区二区| 精品视频在线观看视频免费视频 | 黄色短视屏| 国产伦精品一区三区视频| 亚洲精品影院久久久久久| 色综合久久天天综合观看| 欧美国产日韩精品| 成人在免费观看视频国产| 色综合久久天天综线观看| 韩国三级视频在线观看| 成人高清视频在线观看| 日韩专区一区| 青青久热| 二级片在线观看| 日本免费区| 天天色色网| 亚洲精品影院久久久久久| 韩国三级一区| 亚洲第一页乱| 99久久精品国产高清一区二区| 999精品影视在线观看| 日本免费区| 国产视频一区在线| 美女免费精品视频在线观看| 日本特黄特黄aaaaa大片| 国产a视频| 久久久久久久网| 美女免费精品高清毛片在线视| 国产精品1024永久免费视频| 欧美激情一区二区三区视频 | 亚州视频一区二区| 尤物视频网站在线| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 国产不卡高清| 99色视频在线观看| 久久国产精品自线拍免费| 韩国三级视频网站| 久久成人性色生活片| 中文字幕一区二区三区 精品| 国产不卡精品一区二区三区| 亚洲女人国产香蕉久久精品| 麻豆系列 在线视频| 黄视频网站在线观看| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 精品视频免费在线| 一级女性大黄生活片免费| 一级片片| 国产亚洲精品成人a在线| 国产不卡在线观看| 黄色短视屏| 亚洲 激情| 欧美激情一区二区三区视频 | 九九九网站| 你懂的日韩| 欧美a级成人淫片免费看| 日本在线不卡免费视频一区| 国产不卡在线看| 国产激情一区二区三区| 可以免费看污视频的网站| 久久国产精品自由自在| 国产网站免费在线观看| 国产伦精品一区二区三区无广告 | 国产高清在线精品一区二区| 精品国产一区二区三区免费| 日本特黄特色aaa大片免费| 九九免费高清在线观看视频| 精品国产亚洲人成在线| 日本伦理片网站| 韩国毛片免费| 国产视频一区二区三区四区| 国产91精品露脸国语对白| 可以在线看黄的网站| 国产一区免费观看| 成人a级高清视频在线观看| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 色综合久久天天综合观看| 国产麻豆精品免费密入口| 99久久精品国产免费| 久久国产一区二区| 国产麻豆精品免费密入口| 国产福利免费观看| 日日日夜夜操| 久久国产精品自由自在| 久久国产精品只做精品| 美国一区二区三区| 国产91精品露脸国语对白| 国产不卡在线看| 午夜家庭影院| 免费一级生活片| 国产成人精品综合| 亚洲wwwwww| 国产国产人免费视频成69堂| 免费一级片网站| 超级乱淫伦动漫| 精品在线观看一区| 精品国产一区二区三区国产馆| 国产一区二区精品久久| 九九免费高清在线观看视频| 91麻豆国产| 毛片高清| 99久久精品国产麻豆| 一级女性全黄久久生活片| 精品久久久久久综合网| 久久精品道一区二区三区| 九九国产| 欧美一级视| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 国产成人啪精品| 中文字幕一区二区三区精彩视频| 一级女性全黄生活片免费| 国产麻豆精品免费视频| 精品国产一区二区三区精东影业| 久久国产一久久高清| 欧美国产日韩在线| 欧美爱爱动态| 国产精品1024在线永久免费 | 成人免费观看男女羞羞视频| 91麻豆国产福利精品| 国产亚洲精品成人a在线| 精品在线观看国产| 超级乱淫伦动漫| 亚洲第一页乱| 久久99中文字幕| 久久99中文字幕久久| 国产极品精频在线观看| 一级毛片视频播放| 欧美大片一区| 国产韩国精品一区二区三区| 国产原创视频在线| 欧美另类videosbestsex| 亚洲精品影院一区二区| 精品视频在线看 | 成人a大片在线观看| 黄视频网站免费看| 欧美激情一区二区三区视频| 国产极品精频在线观看| 精品久久久久久免费影院| 久久福利影视| 久久精品店| 成人免费一级毛片在线播放视频| 精品视频在线看| 日本免费区| 亚洲精品中文一区不卡| 午夜精品国产自在现线拍| 日本在线不卡视频| a级黄色毛片免费播放视频| 你懂的在线观看视频| 九九九网站| 91麻豆国产| 亚欧成人毛片一区二区三区四区| 成人免费观看男女羞羞视频| 九九精品在线播放| 色综合久久天天综合绕观看| 999久久狠狠免费精品| 91麻豆国产| 欧美激情影院| 亚州视频一区二区| 国产一区二区高清视频| 一级片免费在线观看视频| 999精品视频在线| 精品国产一区二区三区免费| 精品国产一区二区三区久久久蜜臀| 国产美女在线观看| 九九精品影院| 精品久久久久久综合网| 国产网站免费在线观看| 精品国产一区二区三区久| 国产精品免费久久| 欧美另类videosbestsex高清| 欧美激情在线精品video| 香蕉视频一级| 毛片的网站| 欧美大片a一级毛片视频| 91麻豆国产| 日韩在线观看视频免费| 日韩中文字幕在线播放| 精品国产一区二区三区久|