表單標記
<FORM> <INPUT>
INPUT 的種類: Text, Radio,Checkbox, Password, Submit/Reset, Image, File, Hidden, Button。
<SELECT> <OPTION>
<TEXTAREA>
■ 引子
表單的用處很多,於網上無處不見,當然是配合 CGI 使用為佳,所以饋下有意使用或學 習 CGI 的話,表單設計見必需的,這一節介紹的標記不多,但其參數變化很多。一份表單的基本架構是:在<FORM> 標記 的包圍下加上一種或以上的表單輸入方式及一個或以上的按鍵。
■<FORM> <INPUT>:
<FORM>稱為表單標記,用以宣告此為表單模式,屬於一個容器標記,表示其它表單標記需要在它的包圍中才有效,<INPUT>便是其中的一個,用以設定各種輸入資料的方法。它 是一個空標記。
<FORM> 的參數設定(常用):
例如: <form action="http://your.isp.com/cgi-local/example.cgi" method="POST">
● action="http://your.isp.com/cgi-local/example.cgi"
表單通常是與 CGI 配合使用的,參數 action 便是用以指明該 CGI 程式的位置,這 樣此表單所填的資料才能正確傳給 CGI 作處理。若饋下沒有 CGI 以進行測試,可 設定此參數為ACTION="mailto:your@email.com" 那樣該表單所填的資料將會寄至 此電郵地址(紅色部分)。
● method="POST"
傳送資料給 CGI 的的方式,可選值為 POST, GET。你只需記住POST容許傳送大量資料,但 GET則只接受低於 1K 的資 料,所以你若看過別人的表單原始碼的話,你會發現申請表單用的是POST 而搜 找器用的是 GET。
<INPUT> 的參數設定(常用):
由於其第一個參數 type 己有很多的選擇,而不同的選擇表示出不同的輸入方式,且其它 參數亦因此而異,故以下將獨立介紹不同輸入方式及其它參數設定。
● type="Text"
可選值為 Text, Radio,Checkbox, Password, Submit/Reset, Image, File, Hidden, Button。
輸入方式一: Text (單行文字盒)
例如<input type="Text" name="age" value="20" align="MIDDLE" size="2" maxlength="255">
● type="Text"
輸入方式為 Text,能產生一單行文字盒,上限為 255 字元。
● name="age"
此一單行文字盒名稱,這是最重要的一個,方便 CGI 辨認由表單傳來的資料,雖 說可隨便命名,但通常 CGI 程式中都有指定名稱,若轉用其它名稱便需要修改該 CGI 程式了,名稱可為沒空白沒特別符號的英文或數字,有大小寫的分別,可以 寫成Your_Age,若有訪客於此表單此一文字盒填入 40 的話,那末傳給 CGI 的字 串便是 Your_Age=40。
● value="20"
此一單行文字盒內定值。若不填寫則文字盒是空白的,等待訪客親自鍵入,若 value="20" 的話, 20 便會出現在文字盒中,當然訪客可以修改之。
●align="MIDDLE"
可選值:top, middle, bottom, left, right, texttop, baseline, absmiddle. 沒太大有處。
● size="2"
此一單行文字盒顯示的長度,若饋下是采用 Big5 編碼的中文網頁便要小心,同 size 的文字盒 NC 會顯示得比 IE 狻長。
● maxlength="255"
此一單行文字盒可輸入字元的上限,為方便編排資料或避免錯輸入等,宜設定上 限,例如輸入電話或 ICQ UIN 的可設為 8,年齡為 2 等。
例子:
始碼<form action="http://your.isp.com/cgi-local/example.cgi" method="POST">
請填入電話號碼:<input type="Text" name="phone" value="" size="10" maxlength="8">
</form> 顯示結果
輸入方式二: Radio (單一選擇)
例如:<input type="Radio" name="gender" value="female" align="MIDDLE" checked>
● type="Radio"
輸入方式為 Radio,能產生一單一選擇,以供點選。
● name="gender"
此一 Radio 名稱,參考 Text 部分的說明。
● value="female"
內定值。每一個 radio 必須及僅有一個 value,通常有同時采用兩個或以上同 name 不同 value 的 Radio 輸入方式,可讓使用使任選其一。
● align="MIDDLE"
可選值:top, middle, bottom, left, right, texttop, baseline, absmiddle。
● checked
設該 Radio 為內定被選。同 name 的各個 Radio 中只能有一個使用,或全不使用這 參數。
例子:
原始碼<form action="http://your.isp.com/cgi-local/example.cgi" method="POST">
請選性別:
<input type="Radio" name="gender" value="Female">女性
<input type="Radio" name="gender" value="Male" checked>男性
<br>你喜歡嗎:
<input type="Radio" name="like" value="Yes">喜歡
<input type="Radio" name="like" value="No">不喜歡
<input type="Radio" name="like" value="NotSure">不肯定
</form> 顯示結果