婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 用XML數據島結合Dom制作通訊錄

用XML數據島結合Dom制作通訊錄

熱門標簽:南寧網絡外呼系統運營商 隨州外呼調研系統 微信地圖標注合并了 r語言數據可視化地圖標注 400電話辦理包年 東營電銷 高德地圖地圖標注服務中心 如何修改多個百度地圖標注 本地電話機器人

一般情況下,如果要為網站提供一個通訊錄程序,需要使用CGI結合后臺數據庫技術,這對WEB服務器的要求比較高,在很多不提供數據庫功能的虛擬主機上甚至無法實現。當然,我們還可以采用TXT文本替代數據庫,但TXT文本是比較難操作的,我們必須一行一行的讀取判斷,還要用分隔字符串實現字段分離,無法進行復雜運算。
現在,我們可以使用“可擴展的標記語言 (XML)” 來保存通訊錄的數據,從而體現出XML的優點:表現數據的結構化方法,對于保存許多關系型數據結構的文件很有幫助。

一、基本原理:
在Microsoft Internet Explorer 5.0及以后的版本里,我們可以利用XML元素來創建數據島,數據島就是被HTML頁面引用或包含的XML數據,XML數據可以包含在HTML文件內,也可以包含在某外部文件內,利用XML數據島可以讓我們免除編寫復雜腳本的麻煩。DOM可對XML文檔進行解析,文檔中的元素、實體、屬性等所有個體都可以用對象模型表示,整個文檔的邏輯結構類似一棵樹,生成的對象模型就是樹的節點,每個對象同時包含了方法和屬性,DOM提供了許多查找節點的方法。利用DOM,開發人員可以動態地創建XML、遍歷文檔、增加(刪除/修改)文檔內容,DOM提供的API與編程語言無關,所以對一些DOM標準中沒有明確定義的接口,不同解析器的實現方法可能會有所差別。

二、具體流程為:
1、定義XML文件如下所示:
  ?xml version="1.0" encoding="gb2312"?>
    中國計算機世界出版服務公司通信錄>
      計算機世界 contactID="2">
        部門名稱>計算機室/部門名稱>
        電話號碼>139/電話號碼>
        電子郵件>fsdos@163.net/電子郵件>
      /計算機世界>
    /中國計算機世界出版服務公司通信錄>
將上述XML文檔保存為tele.xml文件,同時,將上述XML文檔中的字段內容置空,做為初始化框架數據,另存為newid.xml文件。
2、客戶端加載 XML 文檔,在放置通訊錄的表格中通過DATASRC='#xmldso'將XML文件綁定在表格中,DATASRC屬性實際上是通過在要處理的XML元素的ID屬性的前面加上#來實現的,所以我們可以在TD元素中間指定具體需要顯示的字段;
3、使用DOM技術對通訊錄進行增加、刪除記錄操作;
4、通過XMLHTTP協議連接到服務器,保存XML文檔。

三、XML DOM編程簡述:
1、客戶端dom.htm頁面:
HTML>BODY bgColor=#a1bae6>
XML id=xmldso src="tele.xml">/XML>
XML id=newid>/XML> !--加載xml數據-->
SCRIPT Language=JavaScript>
newid.async = false;
newid.load("newid.xml");
//增加記錄;
function addID(){
var doc=xmldso.XMLDocument
var rootnode=doc.documentElement
var sortNode = rootnode.selectNodes("http://部門名稱")
var currentid = sortNode.length-1
var cc=sortNode.item(currentid).text;
if ((cc=="尚未輸入")||(cc==""))
{
alert("請將最后一行數據填寫完畢后再增加新的記錄!");
}
else

var node= newid.documentElement.childNodes(0).cloneNode(true);
var contactID=parseInt(sortNode.item(currentid).parentNode.getAttribute("contactID"))+1; 
node.setAttribute("contactID",contactID); 
xmldso.documentElement.appendChild(node);
}
}
//刪除記錄
function delID(whichFld){
var sortNode = xmldso.selectSingleNode("http://計算機世界[@contactID='"+whichFld+"']");
if (sortNode.parentNode.childNodes.length>1) sortNode.parentNode.removeChild(sortNode); 
}
/SCRIPT>
script language="vbscript">
Sub cc_onmouseup '保存記錄;
Dim objXML, objXSL, objFSO,strFile, strFileName, strXSL,strURL,TheForm
set SaveXMLDoc=xmldso.XMLDocument
strURL="dns2.asp"
Set objXML = CreateObject("Microsoft.XMLHTTP") '創建MS的XMLHTTP組件;
objXML.Open "post",strURL,false '采用Post提交方式;
objXML.setrequestheader "content-type","application/x-www-form-urlencoded"
objXML.send SaveXMLDoc ' 發送信息,保存XML數據;
'xmlGet = objXML.responsebody '稍等片刻后,得到服務器端傳回來的結果;
msgbox "保存成功!" 
Set objXML = Nothing
end sub 
/SCRIPT>
center>b>計算機世界----通信錄/b>br>br>
TABLE id="table" DATASRC='#xmldso' BORDER CELLPADDING=3>
!--進行數據綁定-->
THEAD>TH>編號/TH>TH>部門名稱/TH>TH>電話號碼/TH>TH>電子郵件/TH>/THEAD>
TR>
TD>acronym title='點擊即可刪除該記錄'>INPUT TYPE=button size=4 DATAFLD="contactID" onclick="delID(this.value)">/acronym>/TD>
TD>INPUT TYPE=TEXT DATAFLD="部門名稱">/TD>
TD>INPUT TYPE=TEXT DATAFLD="電話號碼">/TD> 
TD>INPUT TYPE=TEXT DATAFLD="電子郵件">/TD>
/TR>
/TABLE>
INPUT TYPE=BUTTON name=dd id=dd VALUE="增加記錄" onmouseover="this.focus()" onmousedown="addID();">
INPUT TYPE=BUTTON name=cc id=cc VALUE="保存">/center>/BODY>/HTML>

2、服務器端dns2.asp程序比較簡單,在接收到XML數據后,創建文件對象,保存到tele.xml即可:

Set ReceivedDoc = CreateObject("Microsoft.XMLDOM") '創建 XML DOM實例;
ReceivedDoc.async=False
ReceivedDoc.load Request '接收XML數據;
Set files=Server.CreateObject("Scripting.FileSystemObject")
Set numtxt=files.CreateTextFile(Server.MapPath("tele.xml"),True)
numtxt.WriteLine(replace(ReceivedDoc.xml,"?>"," encoding=""gb2312""?>")) '將XML數據寫入文件
numtxt.Close
response.write ReceivedDoc.xml
>

3、實際使用過程中,還需要增加一個顯示通訊錄的網頁index.htm,其實就是上面dom.htm的簡化版,去除所有增加、刪除、修改和保存功能,只在表格單元格中用LABEL顯示數據:
HTML>BODY bgColor=#a1bae6>
XML id=xmldso src="tele.xml">/XML>
center>b>計算機世界----通信錄/b>br>br>
TABLE id="table" DATASRC='#xmldso' BORDER CELLPADDING=3>
THEAD>TH>編號/TH>TH>部門名稱/TH>TH>電話號碼/TH>TH>電子郵件/TH>
/THEAD>
TR>
TD>label DATAFLD="contactID">/label>/TD>
TD>label DATAFLD="部門名稱">/label>/TD>
TD>label DATAFLD="電話號碼">/label>/TD> 
TD>label DATAFLD="電子郵件">/label>/TD>
/TR>
/TABLE>
/center>/BODY>/HTML>

四、使用XML數據島結合Dom技術的優點:
1、首先,當然是XML本身帶來的好處。XML打破了標記定義的壟斷,你可以自定義字段名稱,在本文所用的XML文件中,連字段名都可以為中文,數據非常地簡單明晰,因為它所攜帶的信息不是顯示上的描述,而是信息的語意,極大的加強了文檔的可讀性。使用XML也便于不同系統之間信息的傳輸。
2、XML數據島允許用戶在客戶端訪問與操控數據集,不必頻繁的與服務器交互,這對于減輕服務器的負荷很有幫助。同時,由于XML數據島本身的特點,使得在客戶端的數據操作十分簡便,減少了編程量。
3、DOM強制使用樹模型來訪問XML文檔中的信息,由于XML本質上就是一種分層結構,所以這種描述方法是相當有效的。通過DOM接口,應用程序可以在任何時候訪問XML文檔中的任何一部分數據,控制起來相當靈活。
4、采用xmlhttp對象傳送XML數據到服務器,客戶端頁面無閃爍刷新現象。

本程序在基于Windows2000平臺的IIS5.0和IE5.0上運行通過。在實際運用過程中,還可使用DOM結合XSL技術為通訊錄增加排序、格式轉換和數據查找等功能,使用XML數據島的datapagesize屬性以及previousPage、nextPage函數為通訊錄增加分頁功能,使用DTD與XML Schema動態驗證通訊錄數據。

 

------------------------THE END----------------------

 


附:(全部源程序)
****************************************************************************
一、index.htm(顯示通訊錄):
HTML>BODY bgColor=#a1bae6>
XML id=xmldso src="tele.xml">/XML>
center>b>計算機世界----通迅錄/b>br>br>
TABLE id="table" DATASRC='#xmldso' BORDER CELLPADDING=3>
THEAD>TH>編號/TH>TH>部門名稱/TH>TH>電話號碼/TH>TH>電子郵件/TH>
/THEAD>
TR>
TD>label DATAFLD="contactID">/label>/TD>
TD>label DATAFLD="部門名稱">/label>/TD>
TD>label DATAFLD="電話號碼">/label>/TD> 
TD>label DATAFLD="電子郵件">/label>/TD>
/TR>
/TABLE>
/center>/BODY>/HTML>
****************************************************************************
二、dom.htm(在線編輯通訊錄):
HTML>BODY bgColor=#a1bae6>
XML id=xmldso src="tele.xml">/XML>
XML id=newid>/XML>
SCRIPT Language=JavaScript>
newid.async = false;
newid.load("newid.xml");
function addID(){
var doc=xmldso.XMLDocument
var rootnode=doc.documentElement
var sortNode = rootnode.selectNodes("http://部門名稱")
var currentid = sortNode.length-1
var cc=sortNode.item(currentid).text;
if ((cc=="尚未輸入")||(cc==""))
{
alert("請將最后一行數據填寫完畢后再增加新的記錄!");
}
else

var node= newid.documentElement.childNodes(0).cloneNode(true);
var contactID=parseInt(sortNode.item(currentid).parentNode.getAttribute("contactID"))+1; 
node.setAttribute("contactID",contactID); 
xmldso.documentElement.appendChild(node);
}
}
function delID(whichFld){
var sortNode = xmldso.selectSingleNode("http://計算機世界[@contactID='"+whichFld+"']");
if (sortNode.parentNode.childNodes.length>1) sortNode.parentNode.removeChild(sortNode); 
}
/SCRIPT>
script language="vbscript">
Sub cc_onmouseup '當點擊“保存”按鈕時觸發;
Dim objXML, objXSL, objFSO,strFile, strFileName, strXSL,strURL,TheForm
set SaveXMLDoc=xmldso.XMLDocument
strURL="dns2.asp"
Set objXML = CreateObject("Microsoft.XMLHTTP") '創建MS的XMLHTTP組件;
objXML.Open "post",strURL,false '采用Post提交方式;
objXML.setrequestheader "content-type","application/x-www-form-urlencoded"
objXML.send SaveXMLDoc ' 發送信息
'xmlGet = objXML.responsebody '稍等片刻后,得到服務器端傳回來的結果;
msgbox "保存成功!" 
Set objXML = Nothing
end sub 
/SCRIPT>
center>b>計算機世界----通信錄/b>br>br>
TABLE id="table" DATASRC='#xmldso' BORDER CELLPADDING=3>
THEAD>
TH>編號/TH>
TH>部門名稱/TH>
TH>電話號碼/TH>
TH>電子郵件/TH>
/THEAD>
TR>
TD>acronym title='點擊即可刪除該記錄'>INPUT TYPE=button size=4 DATAFLD="contactID" onclick="delID(this.value)">/acronym>/TD>
TD>INPUT TYPE=TEXT DATAFLD="部門名稱">/TD>
TD>INPUT TYPE=TEXT DATAFLD="電話號碼">/TD> 
TD>INPUT TYPE=TEXT DATAFLD="電子郵件">/TD>
/TR>
/TABLE>
INPUT TYPE=BUTTON name=dd id=dd VALUE="增加記錄" onmouseover="this.focus()" onmousedown="addID();">
INPUT TYPE=BUTTON name=cc id=cc VALUE="保存">/center>/BODY>/HTML>
****************************************************************************
三、dns2.asp(后臺保存通訊錄):
%
Set ReceivedDoc = CreateObject("Microsoft.XMLDOM")
ReceivedDoc.async=False
ReceivedDoc.load Request
Set files=Server.CreateObject("Scripting.FileSystemObject")
Set numtxt=files.CreateTextFile(Server.MapPath("tele.xml"),True)
numtxt.WriteLine(replace(ReceivedDoc.xml,"?>"," encoding=""gb2312""?>"))
numtxt.Close
response.write ReceivedDoc.xml
%>
****************************************************************************
四、tele.xml(通訊錄XML文檔):
?xml version="1.0" encoding="gb2312"?>
中國計算機世界出版服務公司通信錄>
計算機世界 contactID="1">
部門名稱>電話總機/部門名稱>
電話號碼>010-68130909/電話號碼>
電子郵件>webmaster@ccw.com.cn/電子郵件>
/計算機世界>
/中國計算機世界出版服務公司通信錄>
****************************************************************************
五、newid.xml(通訊錄XML初始化文檔):
?xml version="1.0" encoding="gb2312"?>
中國計算機世界出版服務公司通信錄>
計算機世界 contactID="1">
部門名稱>尚未輸入/部門名稱>
電話號碼>保密/電話號碼>
電子郵件>保密/電子郵件>
/計算機世界>
/中國計算機世界出版服務公司通信錄>

標簽:宿遷 西雙版納 黃石 益陽 寧夏 果洛 德州 拉薩

巨人網絡通訊聲明:本文標題《用XML數據島結合Dom制作通訊錄》,本文關鍵詞  用,XML,數據,島,結合,Dom,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《用XML數據島結合Dom制作通訊錄》相關的同類信息!
  • 本頁收集關于用XML數據島結合Dom制作通訊錄的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲综合精品自拍| 91片黄在线观看| 精彩视频一区二区| 欧美日韩1234| 亚洲午夜免费福利视频| 日韩一区二区三免费高清| 激情图区综合网| 国产精品乱码久久久久久| 日本韩国一区二区三区| 一区二区视频在线| 欧美日本在线播放| 国产电影精品久久禁18| 国产精品麻豆久久久| 欧美日韩在线播放| 国产精品自拍一区| 最近中文字幕一区二区三区| 欧美一区二区网站| 国产精品亚洲综合一区在线观看| 亚洲精品美腿丝袜| 欧美一区二区网站| 色天使久久综合网天天| 精品一区二区在线看| 亚洲免费观看在线观看| 91精品国产综合久久久蜜臀图片| 麻豆精品一区二区| 一二三四社区欧美黄| 久久亚洲一级片| 色婷婷亚洲一区二区三区| 亚洲免费av在线| 国产亚洲一区字幕| 日韩精品一区二区三区swag| 国产河南妇女毛片精品久久久| 亚洲国产精品嫩草影院| 26uuu精品一区二区三区四区在线| 国产精品亚洲成人| 一区二区三区色| 国产精品久久久久久久裸模| 精品国一区二区三区| 欧美在线视频不卡| 久久电影网站中文字幕| 亚洲成人一二三| 久久久久久久久久看片| 成人h动漫精品一区二区| 亚洲超碰97人人做人人爱| 国产日韩欧美不卡| 91免费看视频| 蜜臀av性久久久久蜜臀av麻豆| 亚洲一区二区在线播放相泽| 亚洲精品日韩一| 亚洲免费观看高清完整版在线观看熊| 欧美激情一二三区| 国产亚洲va综合人人澡精品| 欧美日韩国产乱码电影| 一本久久精品一区二区| 精品无码三级在线观看视频| 综合色中文字幕| 一区二区三区日韩精品| 亚洲一区二区美女| 久久99精品久久久久久动态图| 国产精品久久久久久久久图文区 | 久久99久久久欧美国产| 日本人妖一区二区| 日韩中文字幕一区二区三区| 亚洲激情欧美激情| 亚洲成人自拍偷拍| 日本强好片久久久久久aaa| 蜜臀av一区二区三区| 国产一区二区在线观看免费| 国产一区二区美女| 蜜臀久久99精品久久久画质超高清| 蜜臀av亚洲一区中文字幕| 亚洲最大成人综合| 日韩激情视频网站| 久国产精品韩国三级视频| 国产一区二区三区四| 91看片淫黄大片一级在线观看| 欧美日韩精品高清| 久久一日本道色综合| 亚洲欧洲成人自拍| 日韩高清中文字幕一区| 黄页网站大全一区二区| 一本久久a久久免费精品不卡| 欧美剧情片在线观看| 精品人在线二区三区| 国产精品久久久99| 日韩精品每日更新| 国产乱人伦精品一区二区在线观看| 国产91丝袜在线播放| 欧美色中文字幕| 欧美高清激情brazzers| 日日摸夜夜添夜夜添精品视频| 亚洲午夜激情网页| 国产成人一区在线| 在线观看国产一区二区| 久久综合国产精品| 亚洲一区二区在线视频| 国v精品久久久网| 制服丝袜成人动漫| 一区在线观看视频| 精品一区二区三区在线观看国产| 91色综合久久久久婷婷| 久久久久99精品国产片| 亚洲国产婷婷综合在线精品| 国产成人啪午夜精品网站男同| 99久久99久久精品免费看蜜桃 | 国产精品欧美精品| 午夜日韩在线电影| 色综合天天性综合| 欧美tickling网站挠脚心| 亚洲国产综合人成综合网站| 五月婷婷久久丁香| 91视频com| 国产精品麻豆99久久久久久| 国内欧美视频一区二区 | 日韩三级电影网址| 亚洲人成网站精品片在线观看| 久久成人18免费观看| 欧美日韩久久久| 亚洲欧美电影院| 91蜜桃在线观看| 最新热久久免费视频| 国产a区久久久| 久久亚洲综合av| 日韩一区在线播放| 国产99久久精品| 久久综合99re88久久爱| 美女免费视频一区二区| 欧美日韩一区中文字幕| 国产欧美视频一区二区三区| 亚洲国产欧美在线| 美女一区二区久久| 97se亚洲国产综合自在线| 国产精品理伦片| 国产 日韩 欧美大片| 国产三级一区二区| 麻豆精品一区二区| 91精品国产福利| 国产精品乱人伦一区二区| 成人精品小蝌蚪| 国产精品视频免费看| av一二三不卡影片| 中文字幕第一区第二区| 91老司机福利 在线| 亚洲国产wwwccc36天堂| 美女精品自拍一二三四| 亚洲精品视频在线看| 风间由美一区二区av101| 欧美成人在线直播| 国产99精品国产| 亚洲欧美日韩系列| 欧美日韩午夜精品| 极品美女销魂一区二区三区免费| 国产欧美中文在线| 国产精品1024| 亚洲婷婷在线视频| 在线不卡a资源高清| 韩国三级中文字幕hd久久精品| 亚洲国产精品黑人久久久| 色先锋资源久久综合| 久久黄色级2电影| 中文字幕在线不卡一区| 欧美亚洲日本国产| 亚洲成人中文在线| 久久久久久久久久电影| 在线国产亚洲欧美| 国产精品中文字幕日韩精品 | 欧美综合一区二区三区| 美女视频免费一区| 亚洲欧美中日韩| 欧美mv日韩mv国产网站app| 91视频xxxx| 国产a级毛片一区| 久久精品在线免费观看| a美女胸又www黄视频久久| 精品对白一区国产伦| 色婷婷国产精品久久包臀| 加勒比av一区二区| 国产精品国产三级国产| 日韩免费性生活视频播放| 日韩一区二区三区在线观看 | 精品影视av免费| 韩国v欧美v亚洲v日本v| 高清日韩电视剧大全免费| 成人手机在线视频| 91视频xxxx| 欧美日本一区二区三区四区 | 精品三级av在线| 久久影院视频免费| 亚洲国产aⅴ天堂久久| 水蜜桃久久夜色精品一区的特点| 日韩av在线发布| 韩国v欧美v亚洲v日本v| 成人av在线资源| 欧美在线观看视频一区二区 | 99久久精品免费看国产免费软件| 成人爱爱电影网址| 大胆亚洲人体视频| 国产91清纯白嫩初高中在线观看| 成人黄色777网| 97精品视频在线观看自产线路二|