第13章-Web應(yīng)用程序設(shè)計(jì)基礎(chǔ)_第1頁
第13章-Web應(yīng)用程序設(shè)計(jì)基礎(chǔ)_第2頁
第13章-Web應(yīng)用程序設(shè)計(jì)基礎(chǔ)_第3頁
第13章-Web應(yīng)用程序設(shè)計(jì)基礎(chǔ)_第4頁
第13章-Web應(yīng)用程序設(shè)計(jì)基礎(chǔ)_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

13.1Web應(yīng)用程序開發(fā)工具13.2頁面設(shè)計(jì)根底13.3Web應(yīng)用程序中的常用對象13.4網(wǎng)頁切換與網(wǎng)頁間數(shù)據(jù)傳遞第13章Web應(yīng)用程序設(shè)計(jì)根底13.1Web應(yīng)用程序開發(fā)工具在Web應(yīng)用程序中,對頁面的處理有兩種方式,一種是效勞器響應(yīng)客戶端請求,然后在效勞器端處理業(yè)務(wù)邏輯,處理完成后再將其轉(zhuǎn)變?yōu)轫撁嬖匕l(fā)送到客戶端;另一種是直接在客戶端進(jìn)行處理。開發(fā)Web應(yīng)用程序需要:C#語言:運(yùn)行在效勞器端,用于處理各種業(yè)務(wù)邏輯。HTML或者XHTML:靠客戶端瀏覽器解析執(zhí)行,用于在客戶端呈現(xiàn)頁面。JavaScript:運(yùn)行在客戶端,靠客戶端瀏覽器解析執(zhí)行,用于處理一些與頁面控制相關(guān)的工作。CSS:靠客戶端瀏覽器解析執(zhí)行,用于控制在客戶端呈現(xiàn)的頁面元素樣式。13.2頁面設(shè)計(jì)根底13.2.1HTML在ASP.NET中,網(wǎng)頁的默認(rèn)擴(kuò)展名為.aspx,頁面中呈現(xiàn)的所有內(nèi)容都放在標(biāo)記<html>和</html>之間。每個(gè)頁面文檔都包含首部〔head〕和主體〔body〕兩局部,主體緊接在首部的后邊。13.2.1HTML根本格式:HTML文檔=首部〔head〕+主體〔body〕首部:由標(biāo)記<head>和</head>之間的內(nèi)容構(gòu)成。用于設(shè)置HTML文件的標(biāo)題、作者等信息〔瀏覽器中不顯示〕。首部中可包含標(biāo)題標(biāo)記符title、樣式標(biāo)記符style、腳本語言標(biāo)記符script等。主體:由標(biāo)記<body>和</body>之間的內(nèi)容構(gòu)成。網(wǎng)頁中的所有內(nèi)容,包括文字、圖形、鏈接以及其他頁面元素都包含在該標(biāo)記符內(nèi)。13.2.1HTMLHTML文檔的一般形式為:<html><head><title>文檔標(biāo)題</title></head><body>這是xhtml文檔的主體局部</body></html>在HTML文檔中,〈標(biāo)記〉和〈/標(biāo)記〉都是配對使用的。13.2.1HTML<標(biāo)記>中可以包含屬性,一般格式為:〈標(biāo)記屬性1="值1"屬性2="值2"…〉例如:

<imgalt="smile"src="smile.png"/>

標(biāo)記之間必須使用空格隔開,屬性名和屬性值之間用等號(hào)隔開,等號(hào)左邊是屬性名稱,右邊是屬性值。表13-1:常用的HTML標(biāo)記。13.2.1HTML表格除了可直接在單元格內(nèi)顯示內(nèi)容,還可將整個(gè)頁面劃分為假設(shè)干個(gè)獨(dú)立的局部,精確地定位文本、圖像或其它元素。表格由行和列組成,行列交叉構(gòu)成了單元格。如下面代碼對應(yīng)右邊的圖:<table><tr><td>第一行第一個(gè)單元格</td><td>第一行第二個(gè)單元格</td></tr></table>在這段代碼中,每一個(gè)<tr></tr>作為一行,每一個(gè)<td></td>作為該行中的一個(gè)單元格。13.2.2CSS層疊樣式表簡稱CSS〔CascadingStyleSheets〕,它可以控制網(wǎng)頁中一個(gè)或多個(gè)元素的外觀。由于改變樣式表中任何一個(gè)元素的顯示樣式,網(wǎng)頁中所有與該樣式級(jí)聯(lián)的元素都會(huì)自動(dòng)發(fā)生改變,因此使用樣式表可以減少很多具有相同外觀元素的重復(fù)設(shè)置工作,從而給網(wǎng)頁的設(shè)計(jì)和維護(hù)帶來了很大的方便。樣式是指每一個(gè)網(wǎng)頁元素呈現(xiàn)在瀏覽器中的風(fēng)格,例如:字體的大小、顏色,頁面的背景色和背景圖等。樣式屬性與值之間用冒號(hào)“:〞分隔,如果一個(gè)樣式中有多個(gè)樣式屬性,各樣式屬性之間要用分號(hào)“;〞隔開。樣式表就是將網(wǎng)頁元素的樣式定義設(shè)計(jì)為一個(gè)獨(dú)立的文件。但凡在網(wǎng)頁的head局部與該樣式表文件建立鏈接的HTML文件,其頁面元素的樣式就會(huì)按照樣式表中的定義顯示。樣式文件的擴(kuò)展名為.css。在網(wǎng)頁文件中引用該樣式文件,只需要在網(wǎng)頁的<head>與</head>之間添加如下代碼:<linkhref="MyStyleSheet1.css"type="text/css"rel="Stylesheet"/>13.2.3JavaScriptJavaScript用于在客戶端直接對頁面中的元素進(jìn)行編程控制,因?yàn)镴avaScript是在客戶端運(yùn)行,所以可以不必依賴于效勞器端的程序。JavaScript代碼包含在script塊中,一般格式如下:<scriptlanguage="JavaScript"type="text/JavaScript">JavaScript代碼</script>13.2.3JavaScript1.響應(yīng)并處理客戶端事件利用JavaScript可以響應(yīng)鼠標(biāo)移動(dòng)、進(jìn)入某個(gè)控件區(qū)域、離開某個(gè)控件區(qū)域等事件,并編寫對應(yīng)的JavaScript事件代碼。2.彈出窗口〔1〕彈出新窗口通過調(diào)用window對象的open方法,可以生成一個(gè)新窗口。格式如下:window.open("URL","windowName",("windowFeature"))其中,如果open(

)成功就返回一個(gè)新的window對象,否那么就返回NULL;URL用來指定新翻開窗口中的HTML文件的位置,此項(xiàng)也可以為空;windowName是窗口名;windowFeature是用于設(shè)置窗口屬性的可選參數(shù),項(xiàng)與項(xiàng)之間用逗號(hào)分開,各項(xiàng)含義見表13-3。13.2.3JavaScript〔2〕彈出消息框有如下3種類型的消息框。①警告信息框Alert格式:window.alert〔[sMessage]〕功能:彈出一個(gè)警告信息框,sMessage是用戶輸入的警告信息〔字符串〕。②選擇信息框Confirm格式:window.confirm〔[sMessage]〕功能:彈出一個(gè)選擇信息框,sMessage是用戶輸入的信息。該信息框有【確定】和【取消】兩個(gè)按鈕,單擊【確定】按鈕時(shí),返回true;單擊【取消】按鈕時(shí),返回false。③對話信息框Prompt格式:mpt([sMessage][,sDefaultValue]功能:彈出一個(gè)對話信息框,sMessage是用戶輸入的提示信息,該信息框中有一個(gè)文本輸入框,sDefaultValue是文本框中的默認(rèn)值。該消息框返回用戶輸入的整數(shù)或字符串。13.3Web應(yīng)用程序中的常用對象在Web應(yīng)用程序運(yùn)行時(shí),ASP.NET將維護(hù)與當(dāng)前應(yīng)用程序、每個(gè)用戶會(huì)話、當(dāng)前HTTP請求、請求的Web窗體頁等有關(guān)的信息。ASP.NET頁框架包含一系列封裝此上下文信息的類。在代碼中使用這些類的實(shí)例訪問內(nèi)部對象。13.3Web應(yīng)用程序中的常用對象常用的對象及對應(yīng)類對象名說明ASP.NET類Response提供對當(dāng)前頁的輸出流的訪問HttpResponseRequest提供對當(dāng)前頁請求的訪問HttpRequestServer公開可以用于在頁之間傳輸控件的實(shí)用工具方法,對HTML文本進(jìn)行編碼和解碼等HttpServerUtilityApplication提供對作用于所有會(huì)話的應(yīng)用程序范圍的方法和事件的訪問等HttpApplicationStateSession為當(dāng)前用戶會(huì)話提供信息等HttpSessionStateViewState提供一個(gè)字典對象,用于在對同一頁的多個(gè)請求之間保留值Context提供對整個(gè)當(dāng)前上下文(包括請求對象)的訪問HttpContext13.3.1Response與RequestResponse對象:用于向客戶端發(fā)送信息,該對象提供了很多有用的屬性和方法,常用有:

1)Response.Write方法,用于將字符、字符串、字符數(shù)組寫入HTTP輸出內(nèi)容流。例如:Response.Write("thisisatest.");2)Response.WriteFile方法,用于將指定的文件寫入HTTP輸出內(nèi)容流。例如:Response.WriteFile("test.txt");3)Response.Redirect方法,用于將客戶端重定向到新的URL。例如:Response.Redirect("test.aspx");13.3.1Response與RequestRequest對象:獲取請求的頁的HttpRequest對象。該對象使ASP.NET能夠讀取客戶端在Web請求期間發(fā)送的HTTP值。例如:

Request.Browser.Platform客戶端使用的操作系統(tǒng)

Request.Browser.Type客戶端使用的瀏覽器類型

Request.UserHostAddress客戶端IP地址13.3.2Application與Session對象Application對象是一個(gè)應(yīng)用程序級(jí)的對象,它包含的數(shù)據(jù)可以在整個(gè)Web站點(diǎn)中被所有用戶使用,并且可以在網(wǎng)站運(yùn)行期間持久地保存數(shù)據(jù),即利用Application對象可以定義類似于所有用戶公用的全局變量。由于Application對象被整個(gè)網(wǎng)站的所有用戶使用,所以對其進(jìn)行操作時(shí),需要先進(jìn)行鎖定,操作完成后再解除鎖定。

Application.Lock();Application["counter"]=(int)Application["counter"]+1;Application.UnLock();13.3.2Application與Session對象Session對象可以用來區(qū)分不同的瀏覽器客戶。當(dāng)不同的瀏覽器客戶訪問效勞器應(yīng)用程序時(shí),效勞器會(huì)分別為其分配一段內(nèi)存空間用于保存不同用戶的數(shù)據(jù)信息,即每一個(gè)客戶都可以有自己的Session。定義與使用Session的方法:Session["online"]=true;Session["counter"]=(int)Session["counter"]+1;13.4網(wǎng)頁的切換與數(shù)據(jù)傳遞常用有下面幾種切換網(wǎng)頁的方法:〔1〕利用超鏈接切換到新網(wǎng)頁。例如,使用HyperLink控件直接鏈接到其他網(wǎng)頁?!?〕利用跨頁發(fā)送切換到新網(wǎng)頁?!?〕使用Response.Redirect方法切換到新的網(wǎng)頁??珥摪l(fā)送和Response.Redirect方法均不限于同一個(gè)Web應(yīng)用程序,也不限于.aspx網(wǎng)頁,只要是存在的文件都可以,如.rar文件等,如果不是HTML網(wǎng)頁,瀏覽器會(huì)顯示相應(yīng)的對話框,供用戶選擇是直接翻開還是保存到磁盤上。

13.4.2網(wǎng)頁間的數(shù)據(jù)傳遞1.使用QueryString傳遞數(shù)據(jù)在切換到另一個(gè)網(wǎng)頁時(shí)直接在網(wǎng)頁的URL后加傳遞的參數(shù),第一個(gè)參數(shù)前用“?〞和網(wǎng)頁名分隔,參數(shù)之間用“&〞分隔,每個(gè)參數(shù)的形式為“變量名=值〞。而在另一個(gè)網(wǎng)頁中使用Request.QueryString[stringName]接收傳遞的參數(shù)。利用PreviousPage屬性獲取數(shù)據(jù)2.利用PreviousPage屬性獲取數(shù)據(jù)如果兩個(gè)網(wǎng)頁屬于同一個(gè)應(yīng)用程序,目標(biāo)網(wǎng)頁可以使用【PreviousPage】屬性來獲取源網(wǎng)頁中的公共屬性或者控件值。使用這種方法時(shí),必須在目標(biāo)網(wǎng)頁的【源】視圖中添加類似下面的代碼。<%@PreviousPageTypeVirtualPath="~/SourcePage.aspx"%>其目的是指明源網(wǎng)頁是哪個(gè)網(wǎng)頁,這行代碼中指定源網(wǎng)頁是SourcePage.aspx。指定以后,在目標(biāo)頁中就可以使用PreviousPage.FindControl獲

溫馨提示

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

評(píng)論

0/150

提交評(píng)論