本專題從最基礎(chǔ)的表單知識(shí),到表單的高級(jí)應(yīng)用,讓你有一個(gè)比較全面地認(rèn)識(shí),相信你在讀完本專題以后,一定會(huì)對(duì)表單非常熟悉。
一、表單概述
表單,在網(wǎng)頁(yè)中的作用不可小視,主要負(fù)責(zé)數(shù)據(jù)采集的功能,比如你可以采集訪問(wèn)者的名字和e-mail地址、調(diào)查表、留言簿等等。
1、表單的組成
一個(gè)表單有三個(gè)基本組成部分:
- 表單標(biāo)簽:這里面包含了處理表單數(shù)據(jù)所用CGI程序的URL以及數(shù)據(jù)提交到服務(wù)器的方法。
- 表單域:包含了文本框、密碼框、隱藏域、多行文本框、復(fù)選框、單選框、下拉選擇框和文件上傳框等。
- 表單按鈕:包括提交按鈕、復(fù)位按鈕和一般按鈕;用于將數(shù)據(jù)傳送到服務(wù)器上的CGI腳本或者取消輸入,還可以用表單按鈕來(lái)控制其他定義了處理腳本的處理工作。
為了顧及不同的網(wǎng)頁(yè)設(shè)計(jì)工具,本文只講述代碼的設(shè)計(jì),不具體講述操作方法,下面就是表單的HTML代碼設(shè)計(jì)要點(diǎn):
1.1 表單標(biāo)簽<form></form>
功能:用于申明表單,定義采集數(shù)據(jù)的范圍,也就是<form>和</form>里面包含的數(shù)據(jù)將被提交到服務(wù)器或者電子郵件里。
語(yǔ)法:<FORM ACTION="URL" METHOD="GET|POST" ENCTYPE="MIME" TARGET="...">. . .</FORM>
屬性解釋見(jiàn)下表:
action=url |
指定一來(lái)處理提交表單的格式.它可以是一個(gè)URL地址(提交給程式)或一個(gè)電子郵件地址. |
method=get或post |
指明提交表單的HTTP方法.可能的值為:
- post:POST方法在表單的主干包含名稱/值對(duì)并且無(wú)需包含于action特性的URL中.
- get:不贊成。GET方法把名稱/值對(duì)加在action的URL后面并且把新的URL送至服務(wù)器.這是往前兼容的缺省值.這個(gè)值由于國(guó)際化的原因不贊成使用.
|
enctype=cdata |
指明用來(lái)把表單提交給服務(wù)器時(shí)(當(dāng)method值為"post")的互聯(lián)網(wǎng)媒體形式.這個(gè)特性的缺省值是"application/x-www-form-urlencoded" |
TARGET="..." |
指定提交的結(jié)果文檔顯示的位置:
- _blank :在一個(gè)新的、無(wú)名瀏覽器窗口調(diào)入指定的文檔;
- _self :在指向這個(gè)目標(biāo)的無(wú)素的相同的框架中調(diào)入文檔;
- _parent :把文檔調(diào)入當(dāng)前框的直接的父FRAMESET框中;這個(gè)值在當(dāng)前框沒(méi)有父框時(shí)等價(jià)于_self;
- _top :把文檔調(diào)入原來(lái)的最頂部的瀏覽器窗口中(因此取消所有其它框架);這個(gè)值等價(jià)于當(dāng)前框沒(méi)有你框時(shí)的_self.
|
例如: <form action="http://www.yesky.com/test.asp" method="post" target="_blank">...</form> 表示表單將向http://www.yesky.com/test.asp以post的方式提交,提交的結(jié)果在新的頁(yè)面顯示,數(shù)據(jù)提交的媒體方式是默認(rèn)的application/x-www-form-urlencoded方式; 1.2 表單域
表單域包含了文本框、多行文本框、密碼框、隱藏域、復(fù)選框、單選框和下拉選擇框等,用于采集用戶的輸入或選擇的數(shù)據(jù),下面分別講述這些表單域的代碼格式:
1.2.1 文本框
文本框是一種讓訪問(wèn)者自己輸入內(nèi)容的表單對(duì)象,通常被用來(lái)填寫單個(gè)字或者簡(jiǎn)短的回答,如姓名、地址等。 代碼格式:<input type="text" name="..." size="..." maxlength="..." value="...">
屬性解釋: type="text"定義單行文本輸入框; name屬性定義文本框的名稱,要保證數(shù)據(jù)的準(zhǔn)確采集,必須定義一個(gè)獨(dú)一無(wú)二的名稱; size屬性定義文本框的寬度,單位是單個(gè)字符寬度; maxlength屬性定義最多輸入的字符數(shù)。 value屬性定義文本框的初始值
樣例1:
樣例1代碼:
<input type="text" name="example1" size="20" maxlength="15">
1.2.2 多行文本框
也是一種讓訪問(wèn)者自己輸入內(nèi)容的表單對(duì)象,只不過(guò)能讓訪問(wèn)者填寫較長(zhǎng)的內(nèi)容。 代碼格式:<TEXTAREA name="..." cols="..." rows="..." wrap="VIRTUAL"></TEXTAREA> 屬性解釋: name屬性定義多行文本框的名稱,要保證數(shù)據(jù)的準(zhǔn)確采集,必須定義一個(gè)獨(dú)一無(wú)二的名稱; cols屬性定義多行文本框的寬度,單位是單個(gè)字符寬度; rows屬性定義多行文本框的高度,單位是單個(gè)字符寬度; wrap屬性定義輸入內(nèi)容大于文本域時(shí)顯示的方式,可選值如下:
- 默認(rèn)值是文本自動(dòng)換行;當(dāng)輸入內(nèi)容超過(guò)文本域的右邊界時(shí)會(huì)自動(dòng)轉(zhuǎn)到下一行,而數(shù)據(jù)在被提交處理時(shí)自動(dòng)換行的地方不會(huì)有換行符出現(xiàn);
- Off,用來(lái)避免文本換行,當(dāng)輸入的內(nèi)容超過(guò)文本域右邊界時(shí),文本將向左滾動(dòng),必須用Return才能將插入點(diǎn)移到下一行;
- Virtual,允許文本自動(dòng)換行。當(dāng)輸入內(nèi)容超過(guò)文本域的右邊界時(shí)會(huì)自動(dòng)轉(zhuǎn)到下一行,而數(shù)據(jù)在被提交處理時(shí)自動(dòng)換行的地方不會(huì)有換行符出現(xiàn);
- Physical,讓文本換行,當(dāng)數(shù)據(jù)被提交處理時(shí)換行符也將被一起提交處理。
樣例2:
樣例2代碼:
<TEXTAREA name="example2" cols="20" rows="2" wrap="PHYSICAL"></TEXTAREA>
1.2.3 密碼框
是一種特殊的文本域,用于輸入密碼。當(dāng)訪問(wèn)者輸入文字時(shí),文字會(huì)被星號(hào)或其它符號(hào)代替,而輸入的文字會(huì)被隱藏。
代碼格式:<input type="password" name="..." size="..." maxlength="...">
屬性解釋: type="password"定義密碼框; name屬性定義密碼框的名稱,要保證數(shù)據(jù)的準(zhǔn)確采集,必須定義一個(gè)獨(dú)一無(wú)二的名稱; size屬性定義密碼框的寬度,單位是單個(gè)字符寬度; maxlength屬性定義最多輸入的字符數(shù)。
樣例3:
樣例3代碼:
<input type="password" name="example3" size="20" maxlength="15">
1.2.4 隱藏域
隱藏域是用來(lái)收集或發(fā)送信息的不可見(jiàn)元素,對(duì)于網(wǎng)頁(yè)的訪問(wèn)者來(lái)說(shuō),隱藏域是看不見(jiàn)的。當(dāng)表單被提交時(shí),隱藏域就會(huì)將信息用你設(shè)置時(shí)定義的名稱和值發(fā)送到服務(wù)器上。
代碼格式:<input type="hidden" name="..." value="...">
屬性解釋: type="hidden"定義隱藏域; name屬性定義隱藏域的名稱,要保證數(shù)據(jù)的準(zhǔn)確采集,必須定義一個(gè)獨(dú)一無(wú)二的名稱; value屬性定義隱藏域的值 例如:<input type="hidden" name="ExPws" value="dd">
1.2.5 復(fù)選框
復(fù)選框允許在待選項(xiàng)中選中一項(xiàng)以上的選項(xiàng)。每個(gè)復(fù)選框都是一個(gè)獨(dú)立的元素,都必須有一個(gè)唯一的名稱。
代碼格式:<INPUT type="checkbox" name="..." value="...">
屬性解釋: type="checkbox"定義復(fù)選框; name屬性定義復(fù)選框的名稱,要保證數(shù)據(jù)的準(zhǔn)確采集,必須定義一個(gè)獨(dú)一無(wú)二的名稱; value屬性定義復(fù)選框的值
樣例4: yesky.com Chinabyte.com
樣例4代碼: <input type="checkbox" name="yesky" value="09">yesky.com 。糹nput type="checkbox" name="Chinabyte" value="08">Chinabyte.com
1.2.6 單選框
當(dāng)需要訪問(wèn)者在待選項(xiàng)中選擇唯一的答案時(shí),就需要用到單選框了。
代碼格式:<input type="radio" name="..." value="...">
屬性解釋: type="radio"定義單選框; name屬性定義單選框的名稱,要保證數(shù)據(jù)的準(zhǔn)確采集,單選框都是以組為單位使用的,在同一組中的單選項(xiàng)都必須用同一個(gè)名稱; value屬性定義單選框的值,在同一組中,它們的域值必須是不同的。
樣例5: yesky.com Chinabyte.com
樣例5代碼: <input type="radio" name="myFavor" value="1">yesky.com 。糹nput type="radio" name="myFavor" value="2">Chinabyte.com
1.2.7 文件上傳框
有時(shí)候,需要用戶上傳自己的文件,文件上傳框看上去和其它文本域差不多,只是它還包含了一個(gè)瀏覽按鈕。訪問(wèn)者可以通過(guò)輸入需要上傳的文件的路徑或者點(diǎn)擊瀏覽按鈕選擇需要上傳的文件。 注意:在使用文件域以前,請(qǐng)先確定你的服務(wù)器是否允許匿名上傳文件。表單標(biāo)簽中必須設(shè)置ENCTYPE="multipart/form-data"來(lái)確保文件被正確編碼;另外,表單的傳送方式必須設(shè)置成POST。
代碼格式:<input type="file" name="..." size="15" maxlength="100">
屬性解釋: type="file"定義文件上傳框; name屬性定義文件上傳框的名稱,要保證數(shù)據(jù)的準(zhǔn)確采集,必須定義一個(gè)獨(dú)一無(wú)二的名稱; size屬性定義文件上傳框的寬度,單位是單個(gè)字符寬度; maxlength屬性定義最多輸入的字符數(shù)。
樣例6:
樣例6代碼:
<input type="file" name="myfile" size="15" maxlength="100">
1.2.8 下拉選擇框
下拉選擇框允許你在一個(gè)有限的空間設(shè)置多種選項(xiàng)。
代碼格式: 。約elect name="..." size="..." multiple> <o(jì)ption value="..." selected>...</option> ... 。/select>
屬性解釋: size屬性定義下拉選擇框的行數(shù); name屬性定義下拉選擇框的名稱; multiple屬性表示可以多選,如果不設(shè)置本屬性,那么只能單選; value屬性定義選擇項(xiàng)的值; selected屬性表示默認(rèn)已經(jīng)選擇本選項(xiàng)。
樣例7:
樣例7代碼: <select name="mySel" size="1"> <o(jì)ption value="1" selected>yesky.com</option> 。紀(jì)ption value="d2">chinabyte.com</option> 。/select>
樣例8: 按Ctrl可以多選
樣例8代碼: <select name="mySelt" size="3" multiple> 。紀(jì)ption value="1" selected>yesky.com</option> <o(jì)ption value="d2">chinabyte.com</option> 。紀(jì)ption value="3">internet.com</option> 。/select>
1.3 表單按鈕
表單按鈕控制表單的運(yùn)作。
1.3.1 提交按鈕
提交按鈕用來(lái)將輸入的信息提交到服務(wù)器。
代碼格式:<input type="submit" name="..." value="...">
屬性解釋: type="submit"定義提交按鈕; name屬性定義提交按鈕的名稱; value屬性定義按鈕的顯示文字;
樣例9:
樣例9代碼:
<input type="submit" name="mySent" value="發(fā)送">
1.3.2 復(fù)位按鈕
復(fù)位按鈕用來(lái)重置表單。
代碼格式:<input type="reset" name="..." value="...">
屬性解釋: type="reset"定義復(fù)位按鈕; name屬性定義復(fù)位按鈕的名稱; value屬性定義按鈕的顯示文字;
樣例10:
樣例10代碼:
<input type="reset" name="myCancle" value="取消">
1.3.3 一般按鈕
一般按鈕用來(lái)控制其他定義了處理腳本的處理工作。
代碼格式:<input type="button" name="..." value="..." onClick="...">
屬性解釋: type="button"定義一般按鈕; name屬性定義一般按鈕的名稱; value屬性定義按鈕的顯示文字; onClick屬性,也可以是其它的事件,通過(guò)指定腳本函數(shù)來(lái)定義按鈕的行為;
樣例11:
樣例11代碼: <input type="button" name="myB" value="保存" onClick="javascript:alert('it is a button')">
出處:藍(lán)色理想
責(zé)任編輯:無(wú)意
上一頁(yè) 下一頁(yè) 花樣表單
◎進(jìn)入論壇網(wǎng)頁(yè)制作、網(wǎng)站綜合版塊參加討論
|