在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美

當(dāng)前位置:雨林木風(fēng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

ASP 3.0高級(jí)編程(415)

ASP 3.0高級(jí)編程(415)

更新時(shí)間:2022-05-16 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

異步執(zhí)行是指在后臺(tái)檢索數(shù)據(jù),可以在全部數(shù)據(jù)返回之前在Web頁面上使用已經(jīng)得到的數(shù)據(jù)。雖然可能需要的是全部的數(shù)據(jù),但異步工作至少可提前開始處理數(shù)據(jù)。也可讓用戶先看到某些內(nèi)容,這使得Web站點(diǎn)看上去響應(yīng)能力更強(qiáng)。
與TDC類似,RDS數(shù)據(jù)控件可以通過設(shè)置OBJECT標(biāo)記的參數(shù)或編寫代碼來設(shè)置其屬性。下面舉一個(gè)例子:
<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33"
              ID="dsoAuthors" WIDTH="0" HEIGHT="0">
       <PARAM NAME="Connect" VALUE="DSN=pubs">
       <PARAM NAME="Server" VALUE="W2000">
       <PARAM NAME="SQL" VALUE="SELECT * FROM Authors">
</OBJECT>
等效于:
<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33"
              ID="dsoAuthors" WIDTH="0" HEIGHT="0">
</OBJECT>

<SCRIPT LANGUAGE=JScript>

function window.onload()
{
       dsoAuthors.Connect = "DSN=pubs";
       dsoAuthors.Server = "W2000";
       dsoAuthors.SQL = "SELECT * FROM Authors";
       dsoAuthors.Refresh();
}
</SCRIPT>
這里為Connect參數(shù)使用了一個(gè)DSN,因?yàn)檫@非常適合該頁面,但也可以是任何有效的ADO連接字符串。
URL是ADO 2.5版提供的新特性,允許使用一個(gè)文件作為數(shù)據(jù)源。該文件可以有兩種格式:一種是用Recordset.Save方法保存的記錄集;另一種是一個(gè)ASP頁面,它創(chuàng)建一個(gè)記錄集,然后將其保存在一個(gè)流中。代碼如下:
<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33"
              ID="dsoAuthors" WIDTH="0" HEIGHT="0">
       <PARAM NAME="URL" VALUE="DataPage.asp">
</OBJECT>
文件DataPage.asp包含以下VBScript代碼:
<%
       Dim rsData
       Set rsData = Server.CreateObject("ADODB.Recordset")
       rsData.Open "SELECT * FROM Authors", strConn
       rsData.Save Response, adPersistXML
       rsData.Close
       Set rsData = Nothing
%>
這只是創(chuàng)建了一個(gè)記錄集,然后用Save方法將記錄集以XML格式保存到Response對(duì)象中。在ADO的早期版本中,只能將記錄集存為物理文件,而ADO 2.5版本能夠直接將其存為流。這個(gè)ASP頁面的結(jié)果就是XML格式的記錄集。下一章將研究關(guān)于流和XML數(shù)據(jù)的所有主題。
使用URL屬性優(yōu)于使用Connect和SQL屬性,其最大優(yōu)點(diǎn)是:在用戶可以看到的網(wǎng)頁中不會(huì)出現(xiàn)連接的細(xì)節(jié)。考慮下面的對(duì)象定義:
<OBJECT CLASSID="clsid: BD96C556-65A3-11D0-983A-00C04FC29E33"
              ID="dsoAuthors" WIDTH="0" HIGHT="0">
       <PARAM NAME="Connect" VALUE="DSN=pubs">
       <PARAM NAME="Server" VALUE="W2000">
       <PARAM NAME="SQL" VALUE="SELECT * FROM Authors">
</OBJECT>
第一行顯示了連接的細(xì)節(jié)。此時(shí)能夠看到DSN為pubs,并且我們選擇了authors表的全部列。這無疑為電腦黑客進(jìn)入Web站點(diǎn)提供了潛在的路徑,因?yàn)樗麄冎懒朔⻊?wù)器的名稱以及數(shù)據(jù)庫的一些細(xì)節(jié)。現(xiàn)在,考慮一下使用URL屬性的情況:
<OBJECT CLASSID="clsid: BD96C556-65A3-11D0-983A-00C04FC29E33"
              ID="dsoAuthors" WIDTH="0" HIGHT="0">
       <PARAM NAME="URL" VALUE="DataPage.asp">
</OBJECT>
現(xiàn)在,用戶所見到的是一個(gè)ASP網(wǎng)頁的URL地址,沒有任何有關(guān)服務(wù)器和數(shù)據(jù)庫的詳細(xì)信息。
使用CONNECT/SQL屬性的方法,用戶可以清楚地見到連接的細(xì)節(jié),而使用URL所見的卻是數(shù)據(jù)。從這一點(diǎn)上來說,消除了一個(gè)安全問題。
在腳本中設(shè)置RDS數(shù)據(jù)控件的屬性時(shí),必須使用Refesh方法,如下所示:
<SCRIPT LANGUAGE=JScript>

function window.onload()
{
       dsoAuthors.URL="DataPage.asp";
       dosAuthors.Refresh();
}
</SCRIPT>
這將強(qiáng)迫數(shù)據(jù)控件使用新的屬性值,并重新從數(shù)據(jù)提供者那里檢索數(shù)據(jù)。除了Refresh方法外,RDS數(shù)據(jù)控件還有許多其他方法,如表10-3所示:
表10-3  RDS數(shù)據(jù)控件的方法及說明
方 法
說 明

Cancel
取消任何異步操作

CancelUpdate
取消對(duì)數(shù)據(jù)的任何修改

CreateRecordset
創(chuàng)建一個(gè)空的記錄集,這允許在本地創(chuàng)建新的數(shù)據(jù)集

MoveFirst
移到第一條記錄

MoveLast
移到最后一條記錄

MoveNext
移到下一條記錄

MovePrevious
移到上一條記錄

Refresh
更新來自數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)

Reset
應(yīng)用過濾或排序條件

SubmitChanges
將所有未解決的修改送回?cái)?shù)據(jù)存儲(chǔ)

在本章后面,會(huì)見到大多數(shù)方法的使用情況。
3.  MSHTML數(shù)據(jù)控件
微軟HTML(MSHTML)數(shù)據(jù)控件比較特別的地方在于:MSHTML是IE的一個(gè)組成部分,并能提供一個(gè)基于HTML文檔的數(shù)據(jù)源。雖然本質(zhì)上MSHTML并不是為數(shù)據(jù)存儲(chǔ)使用的一種格式,但如果確實(shí)有許多包含某些數(shù)據(jù)格式的HTML網(wǎng)頁,MSHTML可能會(huì)變得較為有用。
使用這個(gè)控件的代碼如下所示:
<OBJECT ID="dsoAuthors" DATA="Authors.html" HIGHT="0" WIDTH="0">
</OBJECT>
為了能使用這個(gè)控件,必須為HTML標(biāo)記指定ID屬性,因?yàn)檎荌D屬性確定了字段的名稱。例如:
<DIV ID="au_id">172-32-1176</DIV>
<SPAN ID="au_lname">White</SPAN>
<H1 ID="au_fname">Bob</H1>
<PRE ID="au_id">213-46-8915</PRE>
<H2 ID="au_lname">Green</H2>
<H1 ID="au_fname">Cheryl</H1>
讀者會(huì)注意到這看起來不太漂亮。是的,但正是這樣才可以說明HTML標(biāo)記的名稱是無關(guān)緊要的,ID才是重要的。使用MSHTML DSO解析時(shí),上面的HTML腳本將會(huì)產(chǎn)生兩行數(shù)據(jù),每一行有三個(gè)字段。最后會(huì)得到類似于表10-4的數(shù)據(jù):
表10-4  HTML腳本產(chǎn)生的數(shù)據(jù)
au_id
au_lname
au_fname

172-32-1176
White
Bob

213-46-8915
Green
Cheryl

字段是由ID屬性確定的。如果一個(gè)標(biāo)記的ID與現(xiàn)有的ID相同,那么這個(gè)標(biāo)記的數(shù)據(jù)將成為新的一行,否則在相同的行中創(chuàng)建一個(gè)新的字段。
與已經(jīng)討論過的數(shù)據(jù)控件類似,MSHTML數(shù)據(jù)控件有一個(gè)Recordset屬性,這也是該控件的唯一的一個(gè)屬性。MSHTML數(shù)據(jù)控件沒有方法。
4.  XML數(shù)據(jù)控件
我們已經(jīng)知道了一種將XML數(shù)據(jù)放入RDS控件的方法,即使用RDS數(shù)據(jù)控件和URL屬性從ASP文件中獲取XML數(shù)據(jù)。另外一種方法是使用XML Data Island(XML數(shù)據(jù)島),這需要使用XML標(biāo)記。在這里簡要地提一下這個(gè)問題,因?yàn)樵谙乱徽聲?huì)討論處理XML數(shù)據(jù)的細(xì)節(jié)。
<XML>標(biāo)記是一個(gè)與數(shù)據(jù)控件功能相似的瀏覽器HTML標(biāo)記。在許多情況下與使用一個(gè)RDS數(shù)據(jù)控件類似,但該標(biāo)記是為處理XML數(shù)據(jù)而特別設(shè)計(jì)的。使用的方式有二種。
第一種是使用SRC屬性來指定數(shù)據(jù)的位置。
<XML ID="dsoAuthors" SRC="Authors.xml"></XML>
這表示使用文件Authors.xml作為數(shù)據(jù)源。
另外,也可在標(biāo)記中嵌入XML。
<XML ID="dsoAuthors">
  <Authors>
       <Author>
              <au_id>172-32-1176</au_id>
              <au_lname>White</au_lname>
              <au_fname>Johnson</au_fname>
              <phone>408 496-7223</phone>
              <contract>True</contract>
       </Author>
       <Author>
              <au_id>213-46-8915</au_id>
              <au_lname>Green</au_lname>
              <au_fname>Marjorie</au_fname>
              <phone>415 986-7020</phone>
              <contract>True</contract>
       </Author>
  </Authors>
</XML>
我們將在下一章詳細(xì)討論XML數(shù)據(jù)控件。

10.2.5 數(shù)據(jù)綁定
迄今為止,已經(jīng)可以用幾個(gè)不同的RDS數(shù)據(jù)控件將數(shù)據(jù)送到客戶端,但還沒有介紹當(dāng)數(shù)據(jù)到達(dá)客戶端后,如何處理數(shù)據(jù)。實(shí)際上,這些數(shù)據(jù)控件負(fù)責(zé)的是數(shù)據(jù)的存儲(chǔ)及管理,并不真正地顯示數(shù)據(jù)。因此,問題在于如何將數(shù)據(jù)從數(shù)據(jù)控件中取出,并將其提供給HTML元素,使用戶能夠見到數(shù)據(jù)。
使用客戶端數(shù)據(jù)最簡單的方法是將數(shù)據(jù)與HTML標(biāo)記綁定。綁定就是在HTML元素和數(shù)據(jù)控件之間建立一種聯(lián)系。數(shù)據(jù)控件主要負(fù)責(zé)管理數(shù)據(jù),并為HTML元素提供數(shù)據(jù),而HTML元素則將數(shù)據(jù)顯示在屏幕上。
為了將數(shù)據(jù)源與HTML元素綁定,需要設(shè)置兩個(gè)屬性:
· DATASRC,確定包含數(shù)據(jù)的數(shù)據(jù)控件。在數(shù)據(jù)源名稱前總是要加一個(gè)“#”。
· DATAFLD,確定綁定數(shù)據(jù)控件中的哪個(gè)字段。這些字段是數(shù)據(jù)控件管理的數(shù)據(jù)中的列名。因此對(duì)于一個(gè)數(shù)據(jù)庫,就是表中的列名。
例如:
<OBJECT CLASSID="clsid: BD96C556-65A3-11D0-983A-00C04FC29E33"
              ID="dsoAuthors" WIDTH="0" HIGHT="0">
       <PARAM NAME="URL" VALUE="DataPage.asp">
</OBJECT>

<DIV DATASRC="#dsoAuthors" DATAFLD="au_fname"></DIV>
<DIV DATASCR="#dosAuthors" DATAFLD="au_lname"></DIV>
這里,dsoAuthors是一個(gè)標(biāo)準(zhǔn)的RDS數(shù)據(jù)控件。我們創(chuàng)建了兩個(gè)DIV元素,并通過設(shè)置屬性DATASRC指向先前定義的數(shù)據(jù)控件。然后設(shè)置屬性DATAFLD為字段名,在本例中為au_fname和au_lname。這就是數(shù)據(jù)綁定的全部過程。其結(jié)果如圖10-2所示:

圖10-2  數(shù)據(jù)綁定結(jié)果
需要記住一個(gè)重要事情是文本輸出(Johnson和White)根本沒有在HTML腳本中出現(xiàn)。實(shí)際上HTML只由以上顯示的內(nèi)容組成。
因此,數(shù)據(jù)綁定就是數(shù)據(jù)控件管理遠(yuǎn)程數(shù)據(jù)源的數(shù)據(jù),同時(shí)HTML元素使用該數(shù)據(jù)并將其顯示在屏幕上的能力。
除此之外,HTML元素還有第三個(gè)屬性:DATAFORMATAS,可以是HTML或TEXT,表示如何格式化字段中的數(shù)據(jù)。缺省為TEXT,但如果需要HTML格式的數(shù)據(jù),可以通過數(shù)據(jù)綁定將其格式化,例如下面的文本文件。
Description,Image
The main Wrox logo,<IMG SRC=http://www.okasp.com/techinfo/"logos/WroxLogo.gif">
The Wrox Conferences logo,<IMG SRC=http://www.okasp.com/techinfo/"logos/WroxConferencesLogo.gif">
The ASPToday logo,<IMG SRC=http://www.okasp.com/techinfo/"logos/ASPTodayLogo.gif">
這是TDC的源文件,并且包含兩個(gè)字段,第一個(gè)是說明,第二個(gè)是顯示某些圖像的HTML文本。現(xiàn)在把它和一個(gè)HTML表格進(jìn)行綁定。
<TABLE ID="tblData" DATASRC="#dsoLogos">
  <THEAD>
   <TR>
    <TD>Description</TD>
    <TD>Image</TD>
   </TR>
  </THEAD>
  <TBODY>
   <TR>
    <TD><SPAN DATAFLD="Description"></SPAN></TD>
    <TD><SPAN DATAFLD="Image"></SPAN></TD>
   </TR>
  </TBODY>
</TABLE>
這里不必為數(shù)據(jù)綁定擔(dān)心,本例介紹的是表格數(shù)據(jù)綁定,下面將詳細(xì)討論這方面的內(nèi)容。在這里使用是因?yàn)槟茌^好地說明格式化數(shù)據(jù)。
在瀏覽器中打開它,將會(huì)看到圖10-3所示的結(jié)果:

圖10-3  綁定數(shù)據(jù)的格式化
可以看到數(shù)據(jù)文件中的三行數(shù)據(jù)全部顯示在瀏覽器中,但是HTML作為文本顯示。為了見到HTML格式的數(shù)據(jù),需要使用屬性DATAFORMATAS。
<TD><SPAN DATAFLD="Description"></SPAN></TD>
<TD><SPAN DATAFLD="Image" DATAFORMATAS="HTML"></SPAN></TD>
此時(shí)在瀏覽器打開它,會(huì)得到一個(gè)效果較好的HTML頁面,如圖10-4所示:

圖10-4  綁定數(shù)據(jù)HTML格式化
將第二個(gè)字段格式化為HTML文檔,這一事實(shí)說明了字段任何HTML標(biāo)記都可以解釋成為HTML文檔。因此,IMG標(biāo)記變?yōu)檎嬲膱D像,而源文件中并不包含任何IMG標(biāo)記,只有綁定的數(shù)據(jù)。
可以為任一數(shù)據(jù)源中的字段使用這種格式,任何HTML標(biāo)記都會(huì)被解釋。這對(duì)于那些允許用戶輸入格式化文本的情形是比較有利的。
1.  支持?jǐn)?shù)據(jù)綁定的元素
在上面的例子,使用了<SPAN>、<DIV>和<TABLE>標(biāo)記來綁定數(shù)據(jù),但并不是所有的HTML元素都支持?jǐn)?shù)據(jù)綁定。表10-5詳細(xì)列舉了這些元素,表中列是:
· HTML元素定義支持?jǐn)?shù)據(jù)綁定的元素。
· 綁定屬性定義綁定到數(shù)據(jù)的HTML元素的屬性。例如上面的DIV標(biāo)記,綁定的數(shù)據(jù)就放在innerText屬性中。如果使用A標(biāo)記,并將其綁定到一個(gè)字段,那么數(shù)據(jù)將會(huì)放在href屬性中。
· 可否更新數(shù)據(jù)指出元素中的綁定數(shù)據(jù)是否能被更新。
· 可否表格綁定指出該元素是否允許綁定子元素。稍后會(huì)討論這個(gè)內(nèi)容。· 可否作為HTML顯示指出數(shù)據(jù)是否能格式化為HTML文檔。


溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美
  • <li id="86scu"><menu id="86scu"></menu></li>
    <li id="86scu"></li>
    <button id="86scu"></button>
  • <s id="86scu"></s><button id="86scu"><menu id="86scu"></menu></button>
  • 国产3p露脸普通话对白| 国产亚洲精品久久久久久久| 国产黑丝在线视频| 黄色大片中文字幕| 深夜做爰性大片蜜桃| 日本一区二区黄色| 国产欧美综合一区| 日本xxxx黄色| 日韩毛片在线免费看| 欧洲金发美女大战黑人| 手机版av在线| 欧美一级黄色影院| 欧美 日韩 激情| 污色网站在线观看| 成人性视频欧美一区二区三区| 肉大捧一出免费观看网站在线播放 | 欧美综合在线播放| 国产精品成人久久电影| 日韩成人午夜影院| 日韩av片免费观看| 91热视频在线观看| 日本网站免费在线观看| 亚洲欧美自拍另类日韩| 91蝌蚪视频在线观看| 日韩在线视频在线观看| 69sex久久精品国产麻豆| 亚洲人成无码网站久久99热国产| 亚洲女人在线观看| 亚洲黄色网址在线观看| 久久福利一区二区| 福利视频一区二区三区四区| av在线免费观看国产| av在线播放亚洲| 日本三级免费观看| 我要看一级黄色大片| 欧在线一二三四区| 久久久精品高清| 三年中国中文在线观看免费播放 | 神马午夜伦理影院| 日本xxxxx18| 国产精品网站免费| 波多野结衣天堂| 在线免费看污网站| 国产xxxx振车| 国产免费人做人爱午夜视频| 97在线免费公开视频| 午夜免费看毛片| www.日本在线播放| 国产九九热视频| 欧美 亚洲 视频| 免费激情视频在线观看| 欧美成人三级在线播放| 国产高清www| 992kp快乐看片永久免费网址| 中文字幕视频三区| 大陆极品少妇内射aaaaa| 久久国产激情视频| 成人毛片一区二区| 亚洲一级免费在线观看| 国产人妻777人伦精品hd| 911福利视频| 国产一区亚洲二区三区| 国风产精品一区二区| 成人一区二区三| 青青青在线视频播放| 午夜影院免费版| 欧洲xxxxx| 国内自拍视频一区| 鲁一鲁一鲁一鲁一澡| 三上悠亚免费在线观看| 亚洲天堂网一区| 日韩av一二三四区| 精品国产av无码一区二区三区| 亚洲黄色av片| 天天干天天爽天天射| 精品国产免费av| 国产肉体ⅹxxx137大胆| 中文字幕第一页在线视频| 婷婷六月天在线| 成人免费观看cn| 欧美深夜福利视频| 777精品久无码人妻蜜桃| 波多野结衣网页| 日韩视频在线免费播放| 一级日本黄色片| www.久久com| 久久国产精品免费观看| 国产树林野战在线播放| 精品一区二区成人免费视频| 国产三级中文字幕| 在线免费看污网站| 九九九久久久久久久| 无码精品国产一区二区三区免费| 久草热视频在线观看| 国产91对白刺激露脸在线观看| 亚洲午夜精品久久久久久人妖| www.爱色av.com| 日韩一级免费片| 国产农村妇女精品久久| 97超碰国产精品| 被灌满精子的波多野结衣| 女人天堂av手机在线| 免费在线观看的av网站| 日本xxxx黄色| 日本特级黄色大片| 熟女视频一区二区三区| 欧美美女黄色网| 国产91在线亚洲| 中文字幕天天干| 尤物av无码色av无码| 国产成年人在线观看| 欧美激情成人网| 日韩av高清在线看片| 91香蕉国产线在线观看| 男女污污的视频| 成人中文字幕在线播放| 黑人巨茎大战欧美白妇| 男生操女生视频在线观看| 成人黄色av片| 中国丰满熟妇xxxx性| 手机在线视频一区| 男女污污的视频| 干日本少妇首页| 精品欧美一区免费观看α√| 日本a级片在线播放| 亚洲欧美日本一区二区三区| 男女无套免费视频网站动漫| 免费无码不卡视频在线观看| 免费网站在线观看视频| 亚洲AV无码成人精品一区| caoporm在线视频| 国内国产精品天干天干| 久久久精品高清| 亚洲综合激情视频| 九九热免费在线观看| 手机版av在线| 久久人人爽av| 北条麻妃亚洲一区| 异国色恋浪漫潭| 国产日韩亚洲欧美在线| 免费超爽大片黄| 欧美牲交a欧美牲交aⅴ免费下载| 亚洲熟妇av一区二区三区漫画| 波多野结衣50连登视频| caopor在线视频| 亚洲a级黄色片| www.黄色网址.com| 日韩欧美精品免费| 少妇高潮喷水久久久久久久久久| 久久人妻精品白浆国产 | 欧美 日本 亚洲| 国产小视频精品| 中文字幕第一页亚洲| 日韩 欧美 视频| 国产又黄又大又粗视频| mm131国产精品| 日本精品免费视频| 日韩精品视频久久| 手机免费看av网站| 欧美高清中文字幕| 国产情侣av自拍| 久久精品在线免费视频| 国产在线精品91| www.色就是色.com| 黄色网页免费在线观看| 亚洲a级黄色片| 国产老熟妇精品观看| 亚洲小视频网站| 国产精品12345| 午夜激情视频网| 欧美日韩中文在线视频| 日本一本草久p| 亚欧在线免费观看| 成人免费视频91| 亚洲综合激情五月| 一区二区三区视频在线观看免费| mm131午夜| 五月天开心婷婷| 99免费视频观看| av免费看网址| 日韩av福利在线观看| 精品少妇无遮挡毛片| av免费观看国产| 91免费国产精品| 国产成人精品免费看在线播放 | 视频免费1区二区三区| 1024精品视频| 欧美图片激情小说| 一本色道久久88亚洲精品综合| 三级a三级三级三级a十八发禁止| 成年人看的毛片| 日韩人妻无码精品久久久不卡| 国产成年人在线观看| 色婷婷激情视频| 中文国产在线观看| 免费黄频在线观看| 午夜精品中文字幕| 国产欧美一区二| 色中文字幕在线观看| www亚洲国产|