文字欄位

Download Report

Transcript 文字欄位

互動表單的應用
認識表單元件
• 表單 (Form) 是網站管理者與瀏覽者互動的
一種媒介, 它的應用範圍很廣, 例如製作留
言板、討論區、搜尋引擎、會員申請表、
線上刷卡購物、問卷調查表...等, 其目的不
外乎就是先收集瀏覽者所輸入的資料, 然後
再做後續的應用。
認識表單元件
表單與 CGI、ASP
• 我們在網頁上所看到的表單欄位, 其實只是
一種輸入介面, 僅供瀏覽者打字或選擇項目
而已, 當你按下這份表單的「送出」 鈕之後,
表單內容就會傳送到伺服器上, 並且由事先
撰寫好的 CGI 或 ASP 程式來接手處理, 最
後伺服器再將處理結果傳回瀏覽者的電腦
裡, 就變成了我們送出表單後所看到的畫面。
表單與 CGI、ASP
• 由此可知, 表單必須依賴 CGI 或 ASP 程
式, 才能真正發揮其功用, 否則只是一個
空殼而已。
表單元件的另一種用途
• 表單元件也可以利用 Script 語法加以控制,
使其不必透過程式及伺服器即可產生特殊
的效果;例如 18-6 節範例中, 可選擇連結頁
面的下拉式表單, 就是用 JavaScript 來達成
的。
• 如果你不會撰寫 Script, 只要借助行為
(Behavior) 的幫忙, 仍可做出許多不錯的效
果。
Dreamweaver 提供的表單元件
• Dreamweaver 提供了完整的表單元件, 雖然
你可能不會撰寫 CGI 或 ASP 程式, 但仍可
以利用 Dreamweaver 迅速做出表單外觀, 至
於程式部份, 則可交由程式設計師來為你的
表單量身訂作;或選擇最簡單的方法, 將表
單內容透過 E-mail 傳送到你的信箱, 這種做
法就完全不需要任程式語言了。
Dreamweaver 提供的表單元件
• 請開啟表單面板, 就會看到 Dreamweaver
所提供的各種表單元件:
Dreamweaver 提供的表單元件
• 表單:按下此鈕後, 網頁上會出現一個紅
色虛線框, 即表示表單範圍, 在框框裡面
的表單元件都屬於同一組表單, 當你按下
「送出」鈕後, 虛線框裡的表單資料都會
被傳送出去。
• 文字欄位:可供瀏覽者輸入文字、留言,
亦可將輸入的文字以 ● 號顯示, 以做為
密碼欄位。
Dreamweaver 提供的表單元件
• 隱藏欄位:可插入隱藏式的表單欄位, 通
常是用來儲存給 CGI 或 ASP 程式所必須
的參數, 但瀏覽者不須看到這些內容, 所
以可加以隱藏。
• 文字區域:插入文字區域可直接讓瀏覽
者輸入多行文字, 例如意見欄、自我介紹
等。
• 核取方塊:插入多選鈕, 可供瀏覽者自由
複選。
Dreamweaver 提供的表單元件
• 選項按鈕:插入單選鈕, 同一組單選鈕中
只有一個可以被選取, 所以通常作為問卷
中的單選題 (例如詢問瀏覽者的性別)。
• 選項按鈕群組:可直接設定問卷中同一
個問題的數個選項, 但是瀏覽者只能選擇
其中一個項目。此功能其實和選項按鈕
完全相同, 只是一次可插入多個選項鈕,
並可用同一個交談窗來設定內容。
Dreamweaver 提供的表單元件
• 清單/選單:可將選項集中到清單/選單中,
然後讓瀏覽者選擇其中的項目。
• 跳頁選單:其實這就是清單/選單的一種,
只不過 Dreamweaver 利用 Script 語法, 讓
它可以連結到你所指定的各個網頁。
• 影像欄位:可插入影像以代替 "送出" 鈕,
當瀏覽者點選該影像之後, 同時會將滑鼠
在影像上的座標值傳送出去, 有點類似影
像地圖的功用。
Dreamweaver 提供的表單元件
• 檔案欄位:可讓瀏覽者選擇自己電腦中
的某個檔案, 然後上傳到遠端伺服器裡,
不過上傳的動作必須另外撰寫程式才能
使用。
• 按鈕:最常見的是 "送出" 鈕與 "重設" 鈕,
可傳送或清除表單內的資料;而利用
Script 語法, 也可以另外賦予按鈕特殊的
功能, 例如按下按鈕就連結到其他網頁。
Dreamweaver 提供的表單元件
• 標籤標記:可用來替表單中的項目加註
說明文字。此功能會以 "<label>" HTML
標籤將加註的文字與加註的項目括在一
起, 而成為一個單元。
• 欄位集:您可先將表單中數個類似或相
關的項目選取起來, 然後按此鈕來加上欄
位集外框。不過請注意, 欄位集的框線要
在瀏覽器中才看得到。
Dreamweaver 提供的表單元件
加入文字欄位
• 請開啟一個新網頁, 然後切換到表單面板,
按面板上的文字欄位鈕, 即可在插入點處加
入一行文字欄位;如果網頁上沒有任何表
單虛線範圍, Dreamweaver 會詢問是否要自
動建立一個表單範圍:
加入文字欄位
加入文字欄位
• 為使瀏覽者知道欄位該輸入什麼資料, 我
們必須在各欄位前面打字, 以註明每個欄
位的用途:
如何刪除表單虛線範圍?
• 若要刪除表單範圍, 只要用滑鼠點選紅色框
框的「框線」, 就表示選取了整個表單範圍,
而狀態列左下角的 <form> 標籤也會變成選
取狀態, 此時只要按下 [Delete] 鍵, 即可刪除
整個紅色虛線框了。
如何刪除表單虛線範圍?
設定文字欄位的形式
• 我們還可將文字欄切換為多行或密碼欄位;
請點選一個文字欄位, 便可在屬性面板中進
行切換:
單行式文字欄位
• 單行式欄位只能輸入一行文字, 請用屬性
面板來控制欄位的寬度及字數限制。也
可事先設定初始文字, 通常用來做為輸入
資料的範例。
單行式文字欄位
多行文字欄位
• 多行欄位可以容納好幾行文字, 通常用來讓
瀏覽者留言或是輸入意見;多行欄位還可
設定高度, 也就是一次可顯示幾行文字, 超
過的行數必須用捲動軸來瀏覽。
• 拉下換行列示窗可設定換行方式, 預設會自
動隨著欄位寬度換行, 若不想使文字內容自
動換行, 可將之設成關閉。
多行文字欄位
多行文字欄位
密碼文字欄位
• 如果某些文字欄位的資料需要保密, 可將
該欄位設成密碼形式, 此時所輸入的文字
都會以 ● 符號表示, 以防止旁邊有人偷
看;當然囉, 當這筆資料送到遠端伺服器
後, 仍會顯示成真正的文字內容。
密碼文字欄位
設定欄位的名稱
• 為了讓 CGI 或 ASP 程式能正確取得各欄位
的資料, 我們必須為每一個表單欄位設定名
稱, 而且在同一組表單範圍中, 欄位名稱不
可重複 (單選鈕可以例外)。
• 插入文字欄位或其它表單元件時,
Dreamweaver 會自動幫各欄位命名, 例如文
字欄位是 textfield、 textfield2...依序排列。
設定欄位的名稱
• 為了方便記憶, 一般會依該欄位的性質來取
個相關的名稱, 例如輸入地址的欄位會取做
"address"、輸入電話的欄位會取做 "tel", 雖
然對程式的處理結果沒有影響, 但我們在查
看瀏覽者送出來的資料時會比較方便。
• 要更改欄位名稱, 可在點選該欄位後, 於屬
性面板中修改 。
設定欄位的名稱
設定欄位的名稱
加入核取方塊
• 核取方塊也就是多選鈕, 其用途在於:當您
設定了一組複選題, 其中的項目都是可以同
時被選取的;例如我們要詢問瀏覽者使用
的相機品牌, 由於一個人可能使用兩種以上
的廠牌, 所以就用核取方塊來讓瀏覽者複選。
加入核取方塊
• 請開啟練習檔ex16-01.htm, 點選事先加入
的核取方塊, 進行相關的屬性設定:
加入選項按鈕
• 如果表單中有一堆選項, 而瀏覽者只能從
中選擇其一的時候 (如詢問性別), 就可加
入單選鈕來讓瀏覽者做選擇。
加入選項按鈕群組
• 通常單選的題目都不會只有一個選項, 我們
可按多次單選鈕, 再將每個選項內容標示清
楚, 或者是按下選項按鈕群組鈕, 一次設定
好群組內的選項。
• 例如練習檔 ex16-01.htm 中的參賽類別及檔
案格式就是選項按鈕群組的應用:
加入選項按鈕群組
加入選項按鈕群組
加入選項按鈕群組
• 無論是設定選項按鈕或選項按鈕群組, 同
一組單選項目的欄位名稱一定要相同, 這
樣瀏覽者才能只選擇其中一個項目。
• 以選擇性別為例, 若瀏覽者原本選擇 "男",
後來又選擇 "女", 那麼 "男" 項目應該要
自動取消選取才對;但如果兩個單選項
目的欄位名稱不一樣, 那麼 "男"、"女" 兩
個選項將可以同時被選擇。
加入選項按鈕群組
加入選項按鈕群組
不同選項群組的名稱必須不一樣
• Dreamweaver 預設會將所有的選項按鈕的名
稱都設成一樣, 但若是使用選項按鈕群組來
設定, 欄位名稱就會依序以 "RadioGroup1"、
"RadioGroup2"…排列下去;若是不同的群
組, 卻設成相同的名稱, 不論項目相隔多遠,
只要是在同一份表單中 (即在同一個表單虛
線框裡), 仍然只有其中一個項目可以被選取。
不同選項群組的名稱必須不一樣
核取的值屬性設定
• 我們看到 "性別" 選項後面, 分別加上了
"男"、"女" 等文字, 不過這是給瀏覽者看的,
而真正傳送出去的資料, 則是該選項的核取
的值屬性所定義的內容, 所以我們必須把核
取的值屬性改成相關的文字。
核取的值屬性設定
核取的值屬性設定
加入清單/選單
在報名表網頁中, 我們要詢問瀏覽者的職
業, 由於所列出的職業項目很多, 為了節
省網頁空間, 所以我們決定採用清單/選單,
這樣只需一行文字的空間, 就可容納所有
的職業項目。
• 加入清單/選單
• 設定選單中的選項
• 將選單改成條列式清單
加入清單/選單
• 請開啟練習檔 ex16-02.htm, 將插入點移到
職業:文字之後, 然後按下表單面板的清單
/選單鈕:
設定選單中的選項
1. 選取清單/選單元件後, 按下屬性面板的 清
單值鈕。
2. 接著會出現清單值交談窗, 請在項目標籤
欄位加入想放在選單中的項目, 完畢後按
下確定鈕離開。
設定選單中的選項
數值欄要輸入什麼東西?
• 清單值交談窗分為項目標籤與值兩個欄位,
照理說, 項目標籤欄的內容是給瀏覽者觀看
的, 真正傳送到伺服器的資料則是值欄位裡
的內容, 所以我們應該還要在值欄裡輸入同
樣的文字才對。
• 實際上, 若沒有在值欄輸入任何內容, 傳送
時將自動送出項目標籤的內容, 因此大多數
情況下, 值欄位不需輸入文字。
數值欄要輸入什麼東西?
設定選單中的選項
3. 如果想讓選單一開始就固定在某個特定
的項目, 則可在屬性面板中設定:
設定選單中的選項
4. 用瀏覽器來預
覽此網頁, 看
看下拉式選單
是否能正常運
作:
將選單改成條列式清單
• 你也可以將選單中的項目一次都列出來, 讓
瀏覽者不必拉下選單也可以看到所有內容,
這種類型的元件就稱為清單 (List);雖然這
樣比較佔空間, 但有個好處是可以複選!
將選單改成條列式清單
加入表單按鈕
• 表單最後必須放置一個「送出資料」的按
鈕, 讓瀏覽者把表單傳送給過來。
• 通常還會再放一個可清除資料的「重設
鈕」, 當瀏覽者想重新填寫表單內容時, 可
按下此鈕清除所有寫好的內容。
加入送出鈕和重設鈕
• 請按下表單面板的按鈕鈕, 即可在插入點處
加入一個按鈕, 預設的按鈕形式是 「送出鈕」
(Submit)。
• 可另外再加入一個按鈕, 即「重設鈕」
(Reset), 然後切換屬性面板中的動作種類:
加入送出鈕和重設鈕
加入送出鈕和重設鈕
• 如果要更改按鈕上面的文字, 請在屬性面板
的標籤欄位裡設定:
用 Script 語法來定義按鈕用途
• 按鈕的作用除了「送出」與「重設」兩種,
你還可以用 Script 來自訂按鈕的用途, 如果
不會 Script 語法也沒關係, 因為行為
(Behavior) 所內建的各種效果已足夠你使用
了。
• 以下我們做個簡單的例子, 讓瀏覽者按一下
按鈕, 就可連結到另外一個網頁:
用 Script 語法來定義按鈕用途
用 Script 語法來定義按鈕用途
1. 請開啟練習檔 ex16-03.htm, 在網頁上插入
一個按鈕, 由於我們不是要製作整份表單,
所以照理可不必加入表單虛線範圍;不過
要注意的是, 若沒有產生表單範圍, 則按鈕
在 Netscape 上可能會沒有作用, 所以最好
還是加入表單範圍。
用 Script 語法來定義按鈕用途
用 Script 語法來定義按鈕用途
2. 點選按鈕, 在屬性面板中將動作設為無,;
你可以修改一下按鈕上的文字, 並將按
鈕設為置中對齊。
用 Script 語法來定義按鈕用途
3. 選取按鈕並開啟行為面板, 按下新增項
目鈕, 選擇『前往 URL』動作。
用 Script 語法來定義按鈕用途
4. 在交談窗的 URL 欄中指定連結網頁, 再按
下確定鈕就完成了;請用瀏覽器來測試看
看哦!
用 E-Mail 傳送表單內容
• 通常當瀏覽者按下「送出鈕」後, 表單資料
會連結到遠端的應用程式伺服器, 傳送給程
式處理, 並將表單資料存至資料庫中;如果
想用陽春一點的方式, 也可以讓表單資料透
過 E-mail 傳送給你。
用 E-Mail 傳送表單內容
1. 請開啟練習檔 ex16-05.htm , 然後點選表單
範圍的紅色虛線框, 此時屬性面板會切換
到整份表單的屬性設定模式, 請在動作欄
裡輸入 E-mail 連結, 表示將「送出表單」
的動作交由 E-mail 來處理, 語法是:
用 E-Mail 傳送表單內容
用 E-Mail 傳送表單內容
2. 若想讓傳送過來的 E-mail 都具有相同的
主旨, 可以直接在 E-mail 連結後面加上主
旨內容, 語法是 ?subject=主旨內容:
用 E-Mail 傳送表單內容
3. 將屬性面板的方法改為 POST, 由於表單
預設的處理方法通常為 GET, 所能處理的
資料量比較少, 現在大部份都是用 POST
的處理方式。
用 E-Mail 傳送表單內容
4. 在編碼類型欄位中輸入 text/plain, 將傳送
出去的表單資料類型設為純文字, 否則當
你收到別人傳送過來的 E-mail 時, 可能會
看到一堆亂碼。
用 E-Mail 傳送表單內容
• 設定完畢之後, 請用瀏覽器來測試一下是否
可正常傳送 (別忘了先連上 Internet) ;例如
以 Internet Explorer 來測試報名表網頁, 在填
完了一堆欄位後, 按下送出報名表鈕, 就出
現如下的交談窗, 告訴你即將以 E-mail 傳送
資料:
用 E-Mail 傳送表單內容
用 E-Mail 傳送表單內容
• 當網站管
理者收到
郵件後, 會
看到如下
的內容:
檢驗表單欄位的正確性
• 一般在 CGI 或 ASP 程式中, 都會事先檢查
各表單欄位的正確性, 如果瀏覽者傳送到
伺服器的資料不符合規定, 就不會處理這
筆資料, 而會告知瀏覽者哪裡有問題, 等修
正並重新傳送後才會處理。
• 在本章的例子中, 並沒有用到 CGI 或 ASP
程式, 所以無法為每一個欄位設定很周密
的檢驗條件, 不過我們可以改用 Script 語
法, 讓瀏覽器來幫你檢查各欄位的正確性,
至少可做到最基本的篩選。
檢驗表單欄位的正確性
• 在行為面板裡就有一組事先寫好的 Script,
可以幫你檢驗表單欄位的資料;假設我們
要對 E-mail 欄位做限制, 使該欄位裡的資料
必須符合 E-mail 格式, 那麼可如下操作:
檢驗表單欄位的正確性
1. 請開啟 ex16-06.htm, 選取表單中的姓名
欄位, 在行為面板中按下新增項目鈕, 選
擇『檢驗表單』動作。
檢驗表單欄位的正確性
2. 交談窗中會出現目前表單裡所有的文字
欄位, 請選擇一個想要做檢驗的欄位, 再
指定其限制條件即可。
檢驗表單欄位的正確性
3. 請使用瀏覽器來測試表單的驗証功能。如
果我們沒有在姓名欄位裡輸入資料那麼當
插入點離開該欄位時, 就會跳出一個交談
窗, 告訴你資料格式有誤, 請重新修正吧!
檢驗表單欄位的正確性
將交談窗訊息改成中文
• 由於驗証表單的 Script 碼是由 Dreamweaver
幫你撰寫的, 所以預設的錯誤訊息都以英文
顯示;如果你懂得一點 Script 語法, 也可以
切換到程式碼模式, 將相關的英文訊息都改
成中文字。
將交談窗訊息改成中文