Dreamwaver MX與ASP.NET(六)

來源:互聯網
上載者:User
asp.net 6.建立記錄修改頁面

相關介紹(注意:為了能顯示代碼,以下所有代碼都在“<”之後和“>”之前加了空格,不便之處請多原諒!):

對資料的添加,修改,刪除是對資料庫的三個基本操作。本節介紹修改記錄部分。

STEP 1 設計修改流程

一般來說,只需要對指定的記錄進行更新,所以需要建立搜尋網頁面進行查詢,並將查詢結果顯示在結果頁中,並讓使用者對其進行修改。最後通過提交操作完成更新任務。

首先,建立查詢頁面。在建立dataset的過程中,我們可以通過資料過濾器Filter選擇所需的資料。由於我們將會點擊DataList中的連結來到達此頁面,所以選擇URL Parameter並利用關鍵字CODE來篩選出所需的頁面。


[圖 6-1篩選資料]

為此,在網站中建立modify.aspx檔案,並添加DataSet如上圖。

Step2 建立細節頁面

為了產生連結,首先應建立導航頁面。可以對在第3節中建立的DataGrid頁面修改達到這樣的導航效果。DataGrid的樣式是修改的,資料項目同樣可以設定為顯示有連結的文字。同樣在DataList和Repeater中也可以實現同樣的功能,都是設定一個超級連結到細節頁面。

開啟原來的location2.aspx檔案,修改原來的DataList樣式。選擇DataListm單擊Edit Columns(如圖6-2)。在彈出的DataGrid樣式設計對話方塊(圖6-3)中,可以將Location_name的類型設定為Hyperlink。選中Location_name,單擊Change Column Type按鈕更改為Hyperlink。


[圖 6-2 Edit Columns..]


[圖 6-3 設定hyperlink]
對於Hyperlink設定如下圖,


[圖 6-4 設定連結關鍵字]

顯示的資料域Location_name,串連關鍵字為code,需要跳轉到的頁面就是modify.aspx頁面。點選連結後具體的網址連結將會為

http://yoursite/modify.aspx?CODE=所點擊的紀錄的code的值

而modify.aspx頁面也將會通過傳來的code的值從資料庫中查詢所需的紀錄。

為了在modify.aspx頁面中更新資料,就需要用到表單。這就需要將資料記錄和輸入框綁定。在Dreamweaver MX中綁定資料的方式和Dreamweaver UltraDev中類似。將版面設定如圖6-5。建立6個Text Field,1個hiddenField,1個submit按鈕,放到適當的位置。其中hiddernField用於儲存此記錄的CODE值。因為code值為關鍵字,所以不需改變。


[圖 6-5 modify.aspx頁面]

單擊Binding標籤,將具體資料項目拖到與之對應的text field。同時在Format中可以設定資料的顯示類型。而同樣可以將text field的所有屬性和資料來源綁定。選擇記錄的第一個下拉


[圖6-6 Binding] [圖 6-7 資料類型選擇] [圖6-8 綁定屬性]

列表,設定被資料來源綁定的text Field屬性。
STEP 3資料更新

至於資料更新可以點擊Application面板中的Server Behaviors中的”+”按鈕,選擇Update Record。


[圖 6-9 選擇Update Record]


[圖6-10 設定關聯]

在彈出的對話方塊中,需將輸入框和相對應更新的資料來源關聯起來,並設定資料類型。其中CODE應為關鍵字即Primary Key。類似於Insert Record的頁面,還要設定成功添加和添加失敗跳轉到的頁面。

現在可以預覽一下做好的頁面。輸入網址http://yoursite/location3.aspx,可以看到如圖6-11的頁面。


[圖6-11 location3.aspx頁面瀏覽]

Location_name的一項是可以點擊的,並將跳到細節頁面modify.aspx。


[圖6-12 更新頁面預覽]
通過modify.aspx頁面就可以修改現有資料,並可以通過表單提交事件來更新資料。

其更新的主要代碼如下:

< MM:Update

runat="server"

CommandText='< %# "UPDATE LOCATIONS SET CITY=?, STATE_COUNTRY=?, FAX=?, TELEPHONE=?, ADDRESS=? WHERE CODE=?" % >'

ConnectionString='< %# System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_STRING_location") % >'

DatabaseType='< %# System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_DATABASETYPE_location") % >'

Expression='< %# Request.Form("MM_update") = "form1" % >'

CreateDataSet="false"

SuccessURL='< %# "location3.aspx" % >'

Debug="true"

>

< Parameters >

< Parameter Name="@CITY" Value='< %# IIf((Request.Form("city") < > Nothing), Request.Form("city"), "") % >' Type="WChar" / >

< Parameter Name="@STATE_COUNTRY" Value='< %# IIf((Request.Form("state") < > Nothing), Request.Form("state"), "") % >' Type="WChar" / >

< Parameter Name="@FAX" Value='< %# IIf((Request.Form("fax") < > Nothing), Request.Form("fax"), "") % >' Type="WChar" / >

< Parameter Name="@TELEPHONE" Value='< %# IIf((Request.Form("tele") < > Nothing), Request.Form("tele"), "") % >' Type="WChar" / >

< Parameter Name="@ADDRESS" Value='< %# IIf((Request.Form("address") < > Nothing), Request.Form("address"), "") % >' Type="WChar" / >

< Parameter Name="@CODE" Value='< %# IIf((Request.Form("hiddenField") < > Nothing), Request.Form("hiddenField"), "") % >' Type="WChar" / >

< /Parameters >

< /MM:Update >

Dreamweaver MX是通過mm:update來表識更新的代碼的。其格式和MM:Insert類似。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.