中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      Web開發(fā)的教程圖解

      時(shí)間:2024-06-05 02:26:16 Web Services 我要投稿
      • 相關(guān)推薦

      Web開發(fā)的教程圖解

        同時(shí)我還將展示,如何使用JavaScript腳本和Dom接口,來為網(wǎng)頁創(chuàng)建一個(gè)表格 .將ajax請求的數(shù)據(jù)顯示到該表格內(nèi).

        本次的ajax實(shí)例效果中請求的服務(wù)端網(wǎng)頁依然是:Web_ajax.Asp該網(wǎng)頁使用了Asp輸出xml技術(shù).如果你還不知道如何使用Asp輸出xml請返回:"ajax開始準(zhǔn)備篇"

        提醒:在每篇ajax教程的實(shí)例開始之前,你必須查看當(dāng)天的Web_ajax.asp文件中的數(shù)據(jù)結(jié)構(gòu).因?yàn)槲覀兠看螌?shí)例中要讀取的標(biāo)簽和內(nèi)容都不一樣.點(diǎn)擊:查看Web_ajax.Asp

        上次我們讀取的是msg標(biāo)簽.今天我們要讀取xml中新增的read標(biāo)簽.我們要實(shí)現(xiàn)的效果是:將read標(biāo)簽下的Html,Css,Dom,JavaScript,Ajax這些文本內(nèi)容.顯示到我們網(wǎng)頁中的表格內(nèi).

        先看下面的代碼.和實(shí)例演示

        復(fù)制代碼 代碼如下:

        function ajax_xmlhttp(){

        //在IE中創(chuàng)建xmlhttpRequest,適用于IE5.0以上所有版本

        var msXmlhttp = new Array("Msxml2.XMLHTTP.5.0","Msxml2.XMLHTTP.4.0","Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP","Microsoft.XMLHTTP");

        for(var i=0; i

        try

        {

        _xmlhttp=new ActiveXObject(msXmlhttp[i]);

        }

        catch(e)

        {

        _xmlhttp=null;

        }

        } //循環(huán)創(chuàng)建基于IE瀏覽器的xmlhttp.結(jié)束

        //如果非IE瀏覽器,則創(chuàng)建基于FireFox等瀏覽器的xmlhttpRequest

        if(!_xmlhttp && typeof XMLHttpRequest != "undefined")

        {

        _xmlhttp=new XMLHttpRequest();

        }

        return _xmlhttp;

        }

        //發(fā)送請求函數(shù)

        function Post(){

        var ajax = ajax_xmlhttp(); //將xmlhttprequest對象賦值給一個(gè)變量.

        ajax.open("post","web_ajax.asp",true);//設(shè)置請求方式,請求文件,異步請求

        ajax.onreadystatechange = function(){//你也可以這里指定一個(gè)已經(jīng)寫好的函數(shù)名稱

        if(ajax.readyState==4){//數(shù)據(jù)返回成功

        if(ajax.status==200){//http請求狀態(tài)碼返回ok

        var xmlData = ajax.responseXML;//接收返回xml格式數(shù)據(jù)

        var read = xmlData.getElementsByTagName("read");//獲取所有的read標(biāo)簽

        if(read.length!=0){

        var t = document.createElement("table");//創(chuàng)建一個(gè)表格元素

        t.setAttribute("border","1");

        document.body.appendChild(t);//將表格添加到doby內(nèi)

        for(var i=0;i

        var tr = t.Row(t.rows.length);//添加一行

        var td = tr.Cell(0);//添加一列

        td.innerHTML = read[0].childNodes[i].firstChild.nodeValue;//為單元格寫入文本內(nèi)容

        }

        }

        }

        }

        }

        ajax.send(null);

        }

        今天我們不再講昨天重復(fù)過的內(nèi)容.同樣在Post的函數(shù)內(nèi).多了幾行代碼.可以跟上一篇"ajax初始讀取數(shù)據(jù)篇"進(jìn)行對比.

        下面我們來講一下今天新增的代碼的作用.

        if read.length!=0:即判斷read標(biāo)簽是否被成功獲取.如果其legnth屬性不等于0,則代表read已經(jīng)存在.可以對其進(jìn)行解析

        開始解析返回?cái)?shù)據(jù),但網(wǎng)頁中并沒有存在顯示數(shù)據(jù)的元素.所以我們創(chuàng)建一個(gè)表格:var t = document.createElement("table");.請參考:createElement

        t.setAttribute("border","1");為表格添加一個(gè)邊框?qū)傩裕垍⒖迹簊etAttribute

        document.body.appendChild(t);將創(chuàng)建好的表格添加到網(wǎng)頁body元素內(nèi).請參考:appendChild

        表格添加完成.開始遍歷read標(biāo)簽內(nèi)的所有子元素.也就是:html,css,dom,javascript,ajax這些內(nèi)容.

        開始一個(gè)循環(huán),read[0].childNodes.length的意思是獲取read標(biāo)簽內(nèi)所有子元素的個(gè)數(shù).在這里會返回5. i=0;i<5條件ok! 每循環(huán)一次i變量會自動+1,表格會增加一行,并為該行增加一列.同時(shí)為這一列寫入read第i個(gè)子元素的文本內(nèi)容.直到i=5,i不會再小于read子元素的個(gè)數(shù).條件不滿足.循環(huán)停止.此時(shí)數(shù)據(jù)正好被顯示完畢!

        為了讓每位讀者加深理解.我再陳述一遍該實(shí)例效果的實(shí)現(xiàn)流程:當(dāng)你點(diǎn)擊了"顯示數(shù)據(jù)"按扭時(shí),Post函數(shù)被啟用,函數(shù)內(nèi)一個(gè)名字為ajax的變量被賦值XMLHTTPRequest對象的引用.然后便打開了open方法.并使用send方法向服務(wù)端發(fā)出請求.無論是open還是send方法,都會引發(fā)readyState方法的狀態(tài)值發(fā)生變化.一旦readyState發(fā)生變化就會觸發(fā)onreadystatechange屬性. onreadystatechange屬性指定的程序?qū)䦂?zhí)行.然后在程序內(nèi)再次判斷readyState的狀態(tài)值是否等于4,如果是則證明整個(gè)發(fā)送請求與服務(wù)端返回?cái)?shù)據(jù)已經(jīng)成功.同時(shí)并判斷status是否等200,如果是則代表http請狀態(tài)碼也已經(jīng)ok!此時(shí)可以放心的百分之百的接收數(shù)據(jù),于是我們使用responseXML屬性來接收返回的數(shù)據(jù).該屬性只限制接收xml格式的數(shù)據(jù).我始終認(rèn)為將xml格式的數(shù)據(jù)做為請求與回傳的中介.是ajax最標(biāo)準(zhǔn)的使用方法!

        今天的ajax實(shí)例教程--"ajax之讀取數(shù)據(jù)到表格"就告一段落.我想是不是應(yīng)該留個(gè)問題讓各位讀者來解決一下?各位有沒有發(fā)現(xiàn)在實(shí)例演示中.你如果重復(fù)點(diǎn)擊"顯示數(shù)據(jù)"按扭.表格會被重復(fù)的創(chuàng)建.?dāng)?shù)據(jù)也會被重復(fù)的讀取.我希望各位讀者可以解決該問題.

      【W(wǎng)eb開發(fā)的教程圖解】相關(guān)文章:

      ghost硬盤對拷圖解教程02-16

      美甲教程步驟圖解02-28

      WEB教程標(biāo)準(zhǔn)應(yīng)用標(biāo)簽03-30

      集成spring與Web容器教程03-20

      Java開發(fā)web的幾種開發(fā)模式12-13

      金色漸變美甲教程圖解03-28

      斜法式花朵兒美甲教程圖解03-30

      Web Service的開發(fā)與應(yīng)用基礎(chǔ)03-19

      web網(wǎng)頁開發(fā)筆小知識03-30

      主站蜘蛛池模板: 亚洲国产精品亚洲高清| 成人性生交大片免费看激情| 尖扎县| 国产三级国产精品国产专区| 国产精品自拍视频免费| 国产精品成人无码久久久久久| av资源在线看免费观看| 青青青伊人色综合久久| 久草精品手机视频在线观看| 韩国女主播一区二区在线观看| 精精国产xxx在线视频app| 福州市| 雷波县| 环江| 中文字幕日本女优在线观看| 日本免费播放一区二区三区视频| 国产高潮精品一区二区三区av| 日本午夜一区二区视频| 国产激情视频在线| 亚洲av粉嫩性色av| 莲花县| 高密市| 阳曲县| 丰满少妇人妻无码超清| 方山县| 1234.com麻豆性爰爱影| 91精品啪在线看国产网站| 成人av天堂一区二区 | 精品国产亚洲一品二品| 久久亚洲精品成人综合| 国产国拍亚洲精品永久69| 国产亚洲欧美另类久久久| 精品视频在线观看二区| 久久精品韩国日本国产| 骚片av蜜桃精品一区| 亚洲中文字幕有综合久久| 九九99久久精品午夜剧场免费| 在线无码精品秘 在线观看| 国产免费三级三级三级| 蜜臀av亚洲一区二区| 国产不卡一区二区三区视频|