![第13講 多網(wǎng)頁(yè)項(xiàng)目_第1頁(yè)](http://file4.renrendoc.com/view/418e1b04f2230062015b5da7038f8613/418e1b04f2230062015b5da7038f86131.gif)
![第13講 多網(wǎng)頁(yè)項(xiàng)目_第2頁(yè)](http://file4.renrendoc.com/view/418e1b04f2230062015b5da7038f8613/418e1b04f2230062015b5da7038f86132.gif)
![第13講 多網(wǎng)頁(yè)項(xiàng)目_第3頁(yè)](http://file4.renrendoc.com/view/418e1b04f2230062015b5da7038f8613/418e1b04f2230062015b5da7038f86133.gif)
![第13講 多網(wǎng)頁(yè)項(xiàng)目_第4頁(yè)](http://file4.renrendoc.com/view/418e1b04f2230062015b5da7038f8613/418e1b04f2230062015b5da7038f86134.gif)
![第13講 多網(wǎng)頁(yè)項(xiàng)目_第5頁(yè)](http://file4.renrendoc.com/view/418e1b04f2230062015b5da7038f8613/418e1b04f2230062015b5da7038f86135.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第十三講 多網(wǎng)頁(yè)項(xiàng)目 教學(xué)內(nèi)容一、向項(xiàng)目中添加網(wǎng)頁(yè)二、頁(yè)面間的跳轉(zhuǎn)三、使用查詢字符串傳送數(shù)據(jù)到下一頁(yè)四、添加網(wǎng)頁(yè)屬性在頁(yè)面間交換數(shù)據(jù)教學(xué)目標(biāo) 掌握處理頁(yè)面間關(guān)系的方法; 掌握查詢字符串傳送數(shù)據(jù)的方法; 掌握為頁(yè)面添加屬性的方法。2一、向項(xiàng)目中添加網(wǎng)頁(yè)(1/2) 每個(gè)ASP.NET應(yīng)用程序項(xiàng)目建立時(shí),開(kāi)發(fā)器會(huì)自動(dòng)創(chuàng)建一個(gè)WebForm1.aspx的網(wǎng)頁(yè),該網(wǎng)頁(yè)為項(xiàng)目的啟動(dòng)網(wǎng)頁(yè)。 若要向項(xiàng)目中添加網(wǎng)頁(yè),則:在“項(xiàng)目”菜單的下拉菜單上單擊【添加Web窗體】,在模板區(qū)選擇“Web窗體”,在名稱框內(nèi)輸入網(wǎng)頁(yè)的名稱,單擊【打開(kāi)】按鈕,如右圖。一個(gè)新的網(wǎng)頁(yè)被添加到項(xiàng)目中。3一、向項(xiàng)目中添加網(wǎng)頁(yè)(2/2) 從
2、解決方案資源管理器中可以看到增加了網(wǎng)頁(yè)WebForm2.aspx,如右圖。 雙擊“WebForm1.aspx”或“WebForm2.aspx” ,可以在設(shè)計(jì)視圖區(qū)切換當(dāng)前的工作網(wǎng)頁(yè)。 開(kāi)發(fā)器默認(rèn)第一個(gè)網(wǎng)頁(yè)為啟動(dòng)網(wǎng)頁(yè),若需要將“WebForm2.aspx”設(shè)置為項(xiàng)目的啟動(dòng)網(wǎng)頁(yè),右擊 “WebForm2.aspx” ,在彈出菜單上單擊【設(shè)為起始頁(yè)】即可。 4二、頁(yè)面間的跳轉(zhuǎn) (1/5) 從一個(gè)頁(yè)面跳轉(zhuǎn)到另一個(gè)頁(yè)面有多種方法實(shí)現(xiàn)。 (一)在瀏覽器的地址欄中輸入目的網(wǎng)頁(yè)的URL 在瀏覽器的地址欄中輸入目的網(wǎng)頁(yè)的URL,可以定向到新的網(wǎng)頁(yè)。 (二)調(diào)用腳本打開(kāi)另一個(gè)窗口 調(diào)用JavaScript腳本的w
3、indow.open()方法,可以打開(kāi)瀏覽器的另一個(gè)窗口,在該方法的第一個(gè)參數(shù)中指定需要展示的頁(yè)面的URL。打開(kāi)的另一個(gè)窗口為非模態(tài)窗口,可以在它與別的窗口間切換焦點(diǎn)。 也可以調(diào)用JavaScript腳本的window.showModalDialog()方法顯示一個(gè)模態(tài)對(duì)話框,在該方法的第一個(gè)參數(shù)中指定需要展示的頁(yè)面的URL。模態(tài)對(duì)話框獨(dú)占屏幕焦點(diǎn),此時(shí)不能夠?qū)⒔裹c(diǎn)切換到別的窗口。 5(三)在頁(yè)面上增加導(dǎo)航按鈕 Web窗體服務(wù)器控件HyperLink專門為導(dǎo)航到新的URL而設(shè)計(jì)。該控件的NavigateUrl用來(lái)指定導(dǎo)航目標(biāo)。該屬性可以在屬性窗口或程序代碼中指定。如指定控件HyperLink1
4、導(dǎo)航到WebForm2.aspx,則其HTML標(biāo)記為: 跳轉(zhuǎn)到第二頁(yè) 由于HyperLink控件專門用來(lái)導(dǎo)航到新的URL,因此它沒(méi)有Click一類的事件來(lái)添加額外的代碼,若需要在程序中再次改變它的導(dǎo)航目標(biāo),在網(wǎng)頁(yè)或別的控件的事件中改變其NavigateUrl屬性就是。如: HyperLink1.NavigateUrl=WebForm3.aspx; 當(dāng)用戶單擊該控件時(shí),會(huì)導(dǎo)航到WebForm3.aspx上去。 二、頁(yè)面間的跳轉(zhuǎn) (2/5)6(四)利用DataGrid控件的超級(jí)鏈接列 當(dāng)瀏覽數(shù)據(jù)表的記錄時(shí)需要跳轉(zhuǎn)到它對(duì)應(yīng)的專門網(wǎng)站或網(wǎng)頁(yè)時(shí),使用DataGrid控件的超級(jí)鏈接列就可以實(shí)現(xiàn)。如數(shù)據(jù)表的
5、每一行記錄了一個(gè)學(xué)校的簡(jiǎn)略資料,要實(shí)現(xiàn)導(dǎo)航到各學(xué)校的網(wǎng)站,只要將其網(wǎng)站的URL記錄在數(shù)據(jù)表的某列中,將該列聯(lián)系到DataGrid控件的超級(jí)鏈接列就可以。導(dǎo)航到網(wǎng)頁(yè)的做法類似。 (五)調(diào)用Response.Redirect方法 Response是ASP.NET的一個(gè)內(nèi)部對(duì)象,其類名為HttpResponse,主要的作用是輸出數(shù)據(jù)到客戶端。常用到2個(gè)方法: Write方法:輸出數(shù)據(jù)到客戶端。如 Response.Write(“Hello”); Redirect方法:將瀏覽器重定向到新的URL。二、頁(yè)面間的跳轉(zhuǎn) (3/5)7 可以在程序的任何位置使用Response.Redirect方法將瀏覽器重定
6、向到新的URL。如在登錄頁(yè)面中,當(dāng)驗(yàn)證了用戶的密碼和權(quán)限確認(rèn)其為合法用戶時(shí),就可以調(diào)用該方法定向到其他頁(yè)面上。方法是: Response.Redirect(“目標(biāo)URL”); 如: Response.Redirect(”WebForm2.aspx”); 當(dāng)該行被執(zhí)行時(shí),就跳轉(zhuǎn)到WebForm2.aspx頁(yè)面上。 Response.Redirect方法首先發(fā)送一個(gè)HTTP響應(yīng)到客戶端,通知客戶端跳轉(zhuǎn)到一個(gè)新的URL,然后客戶端再發(fā)送跳轉(zhuǎn)請(qǐng)求到服務(wù)器端。在頁(yè)面跳轉(zhuǎn)后其內(nèi)部控件保存的所有數(shù)據(jù)都將丟失。二、頁(yè)面間的跳轉(zhuǎn) (4/5)8(六)調(diào)用Server.Transfer方法 Server.Trans
7、fer方法的作用和調(diào)用方式與Response.Redirect基本是相同的。例如: Server.Transfer(“WebForm2.aspx”); 調(diào)用Server.Transfer方法跳轉(zhuǎn)到另一個(gè)頁(yè)面后,瀏覽器的地址欄中的信息仍然保持不變,表明重定向的請(qǐng)求是在服務(wù)器端進(jìn)行的,頁(yè)面跳轉(zhuǎn)時(shí)僅將頁(yè)面處理的控制權(quán)進(jìn)行了移交,瀏覽器不知道服務(wù)器執(zhí)行了一次頁(yè)面變換。因此,從A頁(yè)面跳轉(zhuǎn)到B頁(yè)面后,在B頁(yè)面中仍然可以提取到A頁(yè)面中的數(shù)據(jù),前提是,它們都是.aspx頁(yè)面。二、頁(yè)面間的跳轉(zhuǎn) (5/5)9三、使用查詢字符串在頁(yè)面間交換數(shù)據(jù)(1/3) 從A頁(yè)面跳轉(zhuǎn)到B頁(yè)面后,往往需要從A頁(yè)面?zhèn)魉鸵恍┬畔⒌紹頁(yè)面
8、中去。從一個(gè)頁(yè)面?zhèn)魉蛿?shù)據(jù)到另一個(gè)頁(yè)面可以使用查詢字符串、內(nèi)部對(duì)象或上一個(gè)網(wǎng)頁(yè)的公有數(shù)據(jù)等。 查詢字符串是附加在網(wǎng)頁(yè)URL后從“?”開(kāi)始直到結(jié)尾的一串字符,當(dāng)瀏覽器從一個(gè)頁(yè)面重定向到另一個(gè)頁(yè)面時(shí), URL附帶查詢字符串一并傳送到目的頁(yè)面,因而在目的頁(yè)面中可以取得查詢字符串帶過(guò)來(lái)的信息。 10 1.構(gòu)造查詢字符串 查詢字符串由“屬性名=屬性值”的格式構(gòu)成,若有多個(gè)屬性,屬性間用“&”連接,中間不要留有空格。如: string URL=”WebForm2.aspx?name=張山&No=1000”; 因?yàn)檎麄€(gè)URL和查詢字符串一起構(gòu)成了一個(gè)字符串,若查詢字符串的某個(gè)屬性值為變量時(shí),該變量必須是str
9、ing類型。如上例可以這樣表示; string Name=”張山”; string Number=”1000”; string URL=”WebForm2.aspx?name=”+Name+”&No=”+Number; 三、使用查詢字符串在頁(yè)面間交換數(shù)據(jù)(2/3)112.解析查詢字符串 當(dāng)查詢字符串隨同URL一起被傳送到目標(biāo)頁(yè)面后,需要將其各個(gè)屬性值解析出來(lái)才能為程序所用。格式是: Request.Params“屬性名”。如解析上例的兩個(gè)屬性值: string Name=Request.Paramsname; string Number=Request.ParamsNo; 3.查詢字符串的應(yīng)用
10、 查詢字符串的使用簡(jiǎn)單易行,一般的瀏覽器和客戶端裝置都能識(shí)別查詢字符串。一般限制查詢字符串的長(zhǎng)度在255個(gè)字符之內(nèi),因此通過(guò)它不能攜帶過(guò)多的信息,也不能攜帶非字符串類型的信息,同時(shí)由于查詢字符串可以從瀏覽器的地址欄中直接看到,其保密性較差。 三、使用查詢字符串在頁(yè)面間交換數(shù)據(jù)(3/3)12四、添加網(wǎng)頁(yè)屬性在頁(yè)面間交換數(shù)據(jù)(1/7) 當(dāng)調(diào)用Server.Transfer方法從A頁(yè)面跳轉(zhuǎn)到B頁(yè)面后,可以在B頁(yè)面中通過(guò)上下文句柄獲取A頁(yè)面的實(shí)例,通過(guò)該實(shí)例訪問(wèn)到A頁(yè)面的公有成員,如公有的字段、控件和屬性等。這需要向A頁(yè)面添加一些公有的屬性。 示例 添加網(wǎng)頁(yè)屬性將數(shù)據(jù)集傳送到下一個(gè)頁(yè)面 這個(gè)項(xiàng)目中有:
11、登錄頁(yè)面(login.aspx)和詳情頁(yè)面(detail.aspx) 2個(gè)網(wǎng)頁(yè)。登錄頁(yè)面連接到數(shù)據(jù)庫(kù)MMIS,將用戶輸入的賬號(hào)和密碼與數(shù)據(jù)表memberInfo中的賬號(hào)和密碼進(jìn)行核對(duì)。若為合法用戶,就將他的姓名和性別送入到詳情頁(yè)面,以便讓詳情頁(yè)面知道是誰(shuí)登錄到了該頁(yè)面;若賬號(hào)或密碼有誤,則給出一個(gè)錯(cuò)誤信息后仍停留在登錄頁(yè)面。 13本例將用戶登錄時(shí)查詢到該用戶的數(shù)據(jù)放在一個(gè)數(shù)據(jù)集中,為L(zhǎng)ogin頁(yè)面添加一個(gè)屬性將該數(shù)據(jù)集返回,以便在下一個(gè)頁(yè)面中訪問(wèn)到這個(gè)數(shù)據(jù)集。當(dāng)調(diào)用Server.Transfer方法從Login頁(yè)面跳轉(zhuǎn)到detail頁(yè)面后,在detail頁(yè)面中通過(guò)上下文句柄獲取Login頁(yè)面的
12、實(shí)例,通過(guò)該實(shí)例訪問(wèn)到Login頁(yè)面的數(shù)據(jù)集屬性,然后從數(shù)據(jù)集屬性中提取記錄的各個(gè)字段值。四、添加網(wǎng)頁(yè)屬性在頁(yè)面間交換數(shù)據(jù)(2/7)14四、添加網(wǎng)頁(yè)屬性在頁(yè)面間交換數(shù)據(jù)(3/7)1.程序運(yùn)行結(jié)果 登錄頁(yè)面 登錄后的頁(yè)面 152. 登錄頁(yè)面的后臺(tái)代碼 public class Login : System.Web.UI.Page protected DataSet myDataSet=new DataSet(); public DataSet LoginDataSet get return myDataSet; 四、添加網(wǎng)頁(yè)屬性在頁(yè)面間交換數(shù)據(jù)(4/7)16 單擊“登錄”按鈕,核對(duì)賬號(hào)和密碼 合
13、法用戶就跳轉(zhuǎn)到detail.aspx頁(yè)面 private void Button1_Click(object sender, System.EventArgs e) string Number=this.TextBoxID.Text; string Pass=this.TextBoxPass.Text; string connectionString=workstation id=localhost;initial catalog=MMIS;user id=sa; pwd=; SqlConnection myConnection=new SqlConnection(connectionStri
14、ng); SqlDataAdapter myDataAdapter=new SqlDataAdapter(); SqlCommand myCommand=myConnection.CreateCommand(); myCommand.CommandText=“select * from memberInfo where 賬號(hào) =+Number+ and 密碼=+Pass+; 四、添加網(wǎng)頁(yè)屬性在頁(yè)面間交換數(shù)據(jù)(5/7)17myDataAdapter.SelectCommand=myCommand; int n=myDataAdapter.Fill(myDataSet,memberInfo); i
15、f(n=1) Server.Transfer(detail.aspx); else this.LabelMessage.Text=“賬號(hào)或密碼錯(cuò)誤”; 四、添加網(wǎng)頁(yè)屬性在頁(yè)面間交換數(shù)據(jù)(6/7)18 3. 詳情頁(yè)面的后臺(tái)代碼 private void Page_Load(object sender, System.EventArgs e) Login wfm1=(Login)Context.Handler; DataSet myDataSet=wfm1.LoginDataSet; string s=“請(qǐng)”+ myDataSet.TablesmemberInfo.Rows0姓名.ToString().Trim(); if(myDataSet.TablesmemberInfo.Rows0性別.ToString()=男) s+=先生核對(duì)您的資料; else s+=女士核對(duì)您的資料; this
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中學(xué)市場(chǎng)營(yíng)銷專員聘請(qǐng)合同
- 2025年電商培訓(xùn)項(xiàng)目申請(qǐng)報(bào)告
- 2025年個(gè)人施工合同規(guī)范文本
- 2025年水分計(jì)項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告模式
- 2025年公務(wù)員勞動(dòng)合同官方版
- 2025年五金制品購(gòu)銷合同樣本大全
- 2025年甾體藥物項(xiàng)目規(guī)劃申請(qǐng)報(bào)告
- 2025年婚約取消財(cái)產(chǎn)恢復(fù)協(xié)議標(biāo)準(zhǔn)化范本
- 2025年個(gè)人車位共享合同樣本
- 2025官方版土地買賣合同協(xié)議范本
- 2024年《公務(wù)員法》相關(guān)法律法規(guī)知識(shí)考試題庫(kù)含完整答案(必刷)
- 手術(shù)室氣體的使用
- 數(shù)字證書使用承諾函
- 汽車銷售經(jīng)理年終總結(jié)
- 《社區(qū)康復(fù)》課件-第十章 養(yǎng)老社區(qū)康復(fù)實(shí)踐
- 《社區(qū)康復(fù)》課件-第八章 視力障礙患者的社區(qū)康復(fù)實(shí)踐
- 透析患者的血糖管理
- 2024大型活動(dòng)標(biāo)準(zhǔn)化執(zhí)行手冊(cè)
- 瀝青拌合站講義課件
- 《快遞實(shí)務(wù)》 教案 項(xiàng)目三 快遞收件業(yè)務(wù)操作、項(xiàng)目七 快遞保價(jià)與賠償業(yè)務(wù)
- 《逆向建模與產(chǎn)品創(chuàng)新設(shè)計(jì)》課程標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論