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