《ASP NET開(kāi)發(fā)與應(yīng)用實(shí)踐》課件第10章_第1頁(yè)
《ASP NET開(kāi)發(fā)與應(yīng)用實(shí)踐》課件第10章_第2頁(yè)
《ASP NET開(kāi)發(fā)與應(yīng)用實(shí)踐》課件第10章_第3頁(yè)
《ASP NET開(kāi)發(fā)與應(yīng)用實(shí)踐》課件第10章_第4頁(yè)
《ASP NET開(kāi)發(fā)與應(yīng)用實(shí)踐》課件第10章_第5頁(yè)
已閱讀5頁(yè),還剩44頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本章教學(xué)要點(diǎn)本章要點(diǎn):10.1AJAX技術(shù)概述10.2AJAX服務(wù)器控件10.3Timer控件10.3.1Timer控件屬性10.3.2Timer控件應(yīng)用1思考問(wèn)題?

什么是Sql注入攻擊?

防范Sql注入的常用方法?210.1AJAX技術(shù)概述

31、什么是AJAX技術(shù)?

AJAX全稱(chēng)為AsynchronousJavaScriptandXML,

中文名稱(chēng)為“異步JavaScript和XML,

是一種創(chuàng)建高性能網(wǎng)頁(yè)的開(kāi)發(fā)技術(shù)。AJAX是幾種技術(shù)的組合,每種技術(shù)都有其獨(dú)特之處,多種技術(shù)組合在一起,就形成了一個(gè)功能強(qiáng)大的全新的AJAX技術(shù)。采用AJAX,可使得Web應(yīng)用程序更具有互動(dòng)性、響應(yīng)更快速、用戶體驗(yàn)更好。10.1AJAX技術(shù)概述

42、AJAX組成AJAX由幾種技術(shù)的組合而成,編程人員不必重新學(xué)習(xí)一種新的語(yǔ)言,就能使用AJAX,AJAX包括以下幾方面的內(nèi)容:XMLHttpRequest:能進(jìn)行異步數(shù)據(jù)接收文檔對(duì)象模型(DocumentObjectModel):能進(jìn)行動(dòng)態(tài)顯示和交互XHTML和CSS:實(shí)現(xiàn)網(wǎng)面結(jié)構(gòu)重組XML和XSLT:能用于數(shù)據(jù)交互和相關(guān)操作JavaScript:將頁(yè)面內(nèi)容進(jìn)行綁定

10.1AJAX技術(shù)概述

53、AAJAX技術(shù)AAJAX技術(shù),是微軟在VisualStudio2010及相關(guān)版本中自帶的基于Web互動(dòng)式開(kāi)發(fā)的AJAX技術(shù)。安裝VS后,VisualStudio2010在工具箱中自帶部分AJAX控件,提供了更多客戶端組件,可擴(kuò)展功能,這些客戶端組件,安裝后與VisualStudio2010其它自帶控件使用方法基本相同。

10.1AJAX技術(shù)概述

64、AAJAX技術(shù)優(yōu)點(diǎn)AJAX局部刷新功能,可大大改善用戶訪問(wèn)網(wǎng)頁(yè)的體驗(yàn),使用AJAX技術(shù),可實(shí)現(xiàn)頁(yè)面的局部回調(diào),網(wǎng)頁(yè)不必整個(gè)頁(yè)面進(jìn)行更新,只需要局部更新即可。AJAX擁有更佳的性能,速度更快,不必等待服務(wù)器響應(yīng),避免重新加載整個(gè)網(wǎng)頁(yè)造成頁(yè)面閃動(dòng)。

10.1AJAX技術(shù)概述

71、什么叫模板?2、什么叫局部刷新?3、模板內(nèi)的控件如何實(shí)現(xiàn)局部刷新?4、模板外的控件如何實(shí)現(xiàn)局部刷新?

10.2AJAX服務(wù)器控件

81、ScriptManager管理器控件ScriptManager是ASP.NETAJAX的最重要的控件,主要負(fù)責(zé)管理網(wǎng)站頁(yè)面中的AJAX組件、客戶端的Request及服務(wù)器端的Response。是所有AJAX控件的依托,用戶使用AJAX時(shí),如果不導(dǎo)入這一控件,所有其它的AJAX控件都無(wú)法使用。在Web中的每個(gè)Form,必須添加ScriptManager作為管理用。添加的一個(gè)ScriptManager如圖10-1所示。

10.2AJAX服務(wù)器控件

91

10.2AJAX服務(wù)器控件

10添加的一個(gè)ScriptManager后,HTML代碼如下所示:

<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Default.aspx.cs"Inherits="_Default"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="/1999/xhtml"><headrunat="server"><title></title></head><body><formid="form1"runat="server"><asp:ScriptManagerID="ScriptManager1"runat="server"></asp:ScriptManager></form></body></html>10.2AJAX服務(wù)器控件

112、UpdatePanel控件UpdatePanel控件是一個(gè)容器類(lèi)控件,頁(yè)面中所使用的AJAX控件,必須放在UpdatePanel控件的框線內(nèi),才能具有AJAX的功能。

10.2AJAX服務(wù)器控件

12UpdatePanel

控件是一個(gè)服務(wù)器控件,可開(kāi)發(fā)具有復(fù)雜的客戶端行為的網(wǎng)頁(yè),使網(wǎng)頁(yè)與最終用戶之間具有更強(qiáng)的交互性。

可以通過(guò)聲明方式向

UpdatePanel控件添加內(nèi)容,也可以在設(shè)計(jì)器中通過(guò)使用

ContentTemplate屬性來(lái)添加內(nèi)容。

當(dāng)首次呈現(xiàn)包含一個(gè)或多個(gè)

UpdatePanel控件的頁(yè)面時(shí),將呈現(xiàn)

UpdatePanel控件的所有內(nèi)容并將這些內(nèi)容發(fā)送到瀏覽器。

10.2AJAX服務(wù)器控件

133、UpdatePanel控件的使用UpdatePanel控件用于指定頁(yè)面上哪個(gè)區(qū)域需要局部更新。UpdatePanel控件的部分頁(yè)面更新功能是由ScriptManager服務(wù)器控件、客戶端的PageRequestManager類(lèi)相互協(xié)作完成的。當(dāng)啟用部分頁(yè)更新時(shí),控件可以通過(guò)異步方式發(fā)布到服務(wù)器。異步回發(fā)的行為與常規(guī)回發(fā)類(lèi)似:生成的服務(wù)器頁(yè)面執(zhí)行完整的頁(yè)面和控件生命周期。通過(guò)使用異步回發(fā),可將頁(yè)面更新限制為包含在UpdatePanel控件中并標(biāo)記為要更新的頁(yè)面區(qū)域。服務(wù)器僅將受影響元素的HTML標(biāo)記發(fā)送到瀏覽器。

10.2AJAX服務(wù)器控件

14在頁(yè)面上添加一個(gè)UpdatePanel控件顯示如圖10-2所示。

10.2AJAX服務(wù)器控件

15在頁(yè)面上添加一個(gè)UpdatePanel控件后的HTML代碼如下所示:<formid="form1"runat="server"><asp:ScriptManagerID="ScriptManager1"runat="server"></asp:ScriptManager>

<asp:UpdatePanelID="UpdatePanel1"runat="server"></asp:UpdatePanel></form>10.2AJAX服務(wù)器控件

16在UpdatePanel控件的框線內(nèi)添加一個(gè)標(biāo)簽控件后,顯示如圖10-3所示。

10.2AJAX服務(wù)器控件

17在UpdatePanel控件的框線內(nèi)添加一個(gè)標(biāo)簽控件后的HTML代碼如圖10-4所示:

標(biāo)簽控件在模板之間這是模板的開(kāi)始這是模板的結(jié)束

10.2AJAX服務(wù)器控件

18

在UpdatePanel控件的框線內(nèi)添加一個(gè)控件后,控件將加入到UpdatePanel控件的ContentTemplate模板中。凡是加入這個(gè)模板中的控件,才能具有局部刷新功能??梢酝ㄟ^(guò)聲明方式向

UpdatePanel控件添加內(nèi)容,也可以在設(shè)計(jì)器中通過(guò)使用

ContentTemplate屬性來(lái)添加內(nèi)容。

4、UpdatePanel控件局部刷新案例

19下面的案例,對(duì)比一個(gè)網(wǎng)頁(yè)的頁(yè)面刷新和局部刷新功能。操作步驟如下:建立一個(gè)名為Default2的頁(yè)面在頁(yè)面中加入添加的一個(gè)ScriptManager控件在頁(yè)面中加入添加的一個(gè)UpdatePanel控件在UpdatePanel控件的框線內(nèi),加入一名為L(zhǎng)abel1的標(biāo)簽控件。在UpdatePanel控件的框線內(nèi),加入一名為Button1的按鈕控件。在UpdatePanel控件的框線外,加入一名為Button2的按鈕控件。

4、UpdatePanel控件局部刷新案例

201

4、UpdatePanel控件局部刷新案例

21加入各個(gè)控件后HTML代碼如圖10-6所示。

模板開(kāi)始模板結(jié)束模板內(nèi)的標(biāo)簽控件模板內(nèi)的按鈕1模板外的按鈕2

4、UpdatePanel控件局部刷新案例

22從圖10-7中可以看出,按鈕Button1和標(biāo)簽Label1在控件UpdatePanel的模板線內(nèi),因此具有局部刷新功能,而按鈕Button2和在控件UpdatePanel的模板線外,因此不具有局部刷新功能,而是保持外有的頁(yè)面全局刷新功能。

4、UpdatePanel控件局部刷新案例

23分別雙擊頁(yè)面上的兩個(gè)按鈕控件,在程序欄內(nèi)輸入如下代碼:

protectedvoidButton1_Click(objectsender,EventArgse){Label1.Text="局部刷新";}protectedvoidButton2_Click(objectsender,EventArgse){Label1.Text="頁(yè)面刷新";

4、UpdatePanel控件局部刷新案例

24(10)點(diǎn)擊屏幕上的Button1按鈕,注意觀察窗體左上角的頁(yè)面?zhèn)鬏敔顟B(tài)標(biāo)識(shí),發(fā)現(xiàn)其沒(méi)有任何反應(yīng),主要AJAX實(shí)現(xiàn)了局部刷新的原故,如圖10-8所示。

5、UpdatePanel的觸發(fā)器

25UpdatePanel控件,提供了多種刷新方式,以便用戶可以實(shí)現(xiàn)豐富的Web功能。如表10-1,就是UpdatePanel控件的部分屬性。

性功

能UpdateModeUpdateMode共有兩種模式:Always與Conditional。Always是每次Postback后,UpdatePanel會(huì)連帶更新;相反,Conditional只針對(duì)特定情況才會(huì)更新TriggersTriggers設(shè)置UpdatePanel的觸發(fā)事件表10-1多種觸發(fā)方式,5、UpdatePanel的觸發(fā)器

26UpdateMode屬性:決定控件的更新方式。取值:Always:每一次頁(yè)面回發(fā)都會(huì)更新UpdatePanel控件中的內(nèi)容。默認(rèn)值。Conditional:滿足條件才更新控件中的內(nèi)容條件:控件的一個(gè)觸發(fā)器引起了異步回發(fā)。調(diào)用UpdatePanel控件的Update方法。控件中的ChildrenAsTriggers屬性被設(shè)為true,且UpdatePanel控件的一個(gè)子控件引起回發(fā)。

6、UpdatePanel的觸發(fā)器在綁定模板外的控件

27如前所述,凡是在模板內(nèi)控件,均有讓本模板實(shí)現(xiàn)局部刷新的功能。如何讓模板外的控件,實(shí)現(xiàn)對(duì)本模板的局部刷新功能呢?例:如下代碼的功能是什么呢?

6、UpdatePanel的觸發(fā)器在綁定模板外的控件

28<Triggers><asp:PostBackTriggerControlID="Button1"/></Triggers>

6、UpdatePanel的觸發(fā)器在綁定模板外的控件

29如果按鍵“Button1”在模板外,但當(dāng)UpdateMode=Conditional,且PostBackTriggerControlID="Button1",則“Button1”對(duì)該模板具有局部刷新功能。

7、案例:模板外的按鈕實(shí)現(xiàn)局部刷新功能

30(1)建立如下圖如示網(wǎng)頁(yè)(2)在頁(yè)面添加多個(gè)控件如圖10-10所示。

第3步,在UpdatePanel控件模板內(nèi),添加Label1標(biāo)簽控件第1步,在頁(yè)面添加ScriptManager管理器控件第2步,在頁(yè)面添加UpdatePanel控件

第4步在模板外添加Button1控件

7、案例:模板外的按鈕實(shí)現(xiàn)局部刷新功能

31(3)頁(yè)面的HTML代碼如下所示<formid="form1"runat="server"><divstyle="height:194px;width:531px;background-color:#FFFFFF;"><asp:ScriptManagerID="ScriptManager1"runat="server"></asp:ScriptManager><asp:UpdatePanelID="UpdatePanel3"runat="server"><ContentTemplate><asp:LabelID="Label1"runat="server"Text="Label"></asp:Label></ContentTemplate></asp:UpdatePanel><asp:ButtonID="Button1"runat="server"Text="Button"onclick="Button1_Click"/></div></form>上述代碼表示,按鈕“Button1”沒(méi)有局部刷新功能。

7、案例:模板外的按鈕實(shí)現(xiàn)局部刷新功能

32

(4)運(yùn)行頁(yè)面的代碼,結(jié)果如圖10-11所示。從運(yùn)行結(jié)果看,頁(yè)面沒(méi)有局部刷新功能。

從這個(gè)顯示觀察,頁(yè)面沒(méi)有局部刷新功能7、案例:模板外的按鈕實(shí)現(xiàn)局部刷新功能

33(5)選中UpdatePanel控件,擊右鍵選擇屬性,在下面的屬性中進(jìn)行兩項(xiàng)配置,如圖10-12所示。

7、案例:模板外的按鈕實(shí)現(xiàn)局部刷新功能

341

第1步,設(shè)置UpdateMode=Conditional第2步,設(shè)置Control1D=Button1l7、案例:模板外的按鈕實(shí)現(xiàn)局部刷新功能

35(6)進(jìn)行了相應(yīng)設(shè)置后,代碼如下所示。

7、案例:模板外的按鈕實(shí)現(xiàn)局部刷新功能

36<formid="form1"runat="server"><divstyle="height:194px;width:531px;background-color:#FFFFFF;"><asp:ScriptManagerID="ScriptManager1"runat="server"></asp:ScriptManager><asp:UpdatePanelID="UpdatePanel3"runat="server"UpdateMode="Conditional"><ContentTemplate><asp:LabelID="Label1"runat="server"Text="Label"></asp:Label></ContentTemplate><Triggers><asp:AsyncPostBackTriggerControlID="Button1"/></Triggers></asp:UpdatePanel><asp:ButtonID="Button1"runat="server"Text="Button"onclick="Button1_Click"/></div></form>

7、案例:模板外的按鈕實(shí)現(xiàn)局部刷新功能

37(7)頁(yè)面運(yùn)行后,模板運(yùn)行效果如圖10-13所示,模板外的按鈕Button1具有了局部刷新功能。7、案例:模板外的按鈕實(shí)現(xiàn)局部刷新功能

381

7、案例:模板外的按鈕實(shí)現(xiàn)局部刷新功能

391、什么是AJAX?2、AJAX的主要功能?3、什么叫模板?4、什么叫局部刷新?5、模板內(nèi)的控件如何實(shí)現(xiàn)局部刷新?6、模板外的控件如何實(shí)現(xiàn)局部刷新?10.3Timer控件

40Timer控件是一個(gè)服務(wù)器控件,它會(huì)將一個(gè)JavaScript組件嵌入到網(wǎng)頁(yè)中。

當(dāng)經(jīng)過(guò)

Interval屬性中定義的時(shí)間間隔時(shí),該JavaScript組件將從瀏覽器啟動(dòng)回發(fā)。使用

Timer控件時(shí),必須在網(wǎng)頁(yè)中包括

ScriptManager類(lèi)的實(shí)例。若回發(fā)是由

Timer控件啟動(dòng)的,則

Timer控件將在服務(wù)器上引發(fā)

Tick事件。

當(dāng)頁(yè)發(fā)送到服務(wù)器時(shí),可以創(chuàng)建

Tick事件的事件處理程序來(lái)執(zhí)行一些操作。

10.3Timer控件

4110.3.1Timer控件屬性1、設(shè)定定時(shí)間隔Interval屬性:指定定時(shí)間隔,以毫秒為單位,默認(rèn)值為60000毫秒。2、開(kāi)始和關(guān)閉定時(shí)器Enab

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論