在下面的例子中,表單數(shù)據(jù)將通過 method 屬性附加到 URL 上:
<form action="form_action.asp" method="get"
>
<p>First name: <input type="text" name="fname" /></p>
<p>Last name: <input type="text" name="lname" /></p>
<input type="submit" value="Submit" />
</form>
method 屬性規(guī)定如何發(fā)送表單數(shù)據(jù)(表單數(shù)據(jù)發(fā)送到 action 屬性所規(guī)定的頁面)。
表單數(shù)據(jù)可以作為 URL 變量(method="get")或者 HTTP post (method="post")的方式來發(fā)送。
瀏覽器使用 method 屬性設(shè)置的方法將表單中的數(shù)據(jù)傳送給服務(wù)器進(jìn)行處理。共有兩種方法:POST 方法和 GET 方法。
如果采用 POST 方法,瀏覽器將會(huì)按照下面兩步來發(fā)送數(shù)據(jù)。首先,瀏覽器將與 action 屬性中指定的表單處理服務(wù)器建立聯(lián)系,一旦建立連接之后,瀏覽器就會(huì)按分段傳輸?shù)姆椒▽?shù)據(jù)發(fā)送給服務(wù)器。
在服務(wù)器端,一旦 POST 樣式的應(yīng)用程序開始執(zhí)行時(shí),就應(yīng)該從一個(gè)標(biāo)志位置讀取參數(shù),而一旦讀到參數(shù),在應(yīng)用程序能夠使用這些表單值以前,必須對(duì)這些參數(shù)進(jìn)行解碼。用戶特定的服務(wù)器會(huì)明確指定應(yīng)用程序應(yīng)該如何接受這些參數(shù)。
另一種情況是采用 GET 方法,這時(shí)瀏覽器會(huì)與表單處理服務(wù)器建立連接,然后直接在一個(gè)傳輸步驟中發(fā)送所有的表單數(shù)據(jù):瀏覽器會(huì)將數(shù)據(jù)直接附在表單的 action URL 之后。這兩者之間用問號(hào)進(jìn)行分隔。
一般瀏覽器通過上述任何一種方法都可以傳輸表單信息,而有些服務(wù)器只接受其中一種方法提供的數(shù)據(jù)??梢栽?<form> 標(biāo)簽的 method (方法)屬性中指明表單處理服務(wù)器要用方法來處理數(shù)據(jù),使 POST 還是 GET。
如果表單處理服務(wù)器既支持 POST 方法又支持 GET 方法,那么你該選擇哪種方法呢?下面是有關(guān)這方面的一些規(guī)律:
前面的一些建議也可以作為選擇此種方式的一定解釋。假設(shè)你有一個(gè)很簡(jiǎn)單的表單,其中只包含 x 和 y 這兩個(gè)參數(shù)。在對(duì)這些元素的值進(jìn)行編碼時(shí),它們的形式如下所示:
x=28&y=66
如果表單采用了 method=GET,那么用來引用服務(wù)器端應(yīng)用程序的 URL 將如下所示:
http://www.example.com/example/program?x=28&y=66
在任何時(shí)候我們都可以創(chuàng)建一個(gè)傳統(tǒng)的 <a> 標(biāo)簽,用它在調(diào)用帶有所需參數(shù)值的表單,其形式如下所示:
<a href="http://www.example.com/example/program?x=28&y=66">
唯一的問題是,分隔參數(shù)所用的 & 符號(hào)也是字符實(shí)體中的插入符號(hào)。如果在 <a> 標(biāo)簽的 href 屬性中放入一個(gè) & 符號(hào),瀏覽器就會(huì)將其后面的字符替換成相應(yīng)的字符實(shí)體。
為了防止出現(xiàn)這種情況,我們必須用它的實(shí)體對(duì)等物來替換 & 符號(hào),也就是用 "&" 或 "&" 來替換。替換之后,上面的那個(gè)引用服務(wù)器應(yīng)用程序的非表單示例將如下所示:
<a href="http://www.example.com/example/program?x=28&y=66">
由于這樣還是不能在 URL 中使用 & 符號(hào),并且有可能在將來帶來混亂,因此我們鼓勵(lì)服務(wù)器設(shè)置最后也能夠接受用分號(hào)作為參數(shù)分隔符。您也可以看看自己的服務(wù)器文檔,了解服務(wù)器是否支持這種功能。
<form target="value">
值 | 描述 |
---|---|
_blank | 在新窗口中打開。 |
_self | 默認(rèn)。在相同的框架中打開。 |
_parent | 在父框架集中打開。 |
_top | 在整個(gè)窗口中打開。 |
framename | 在指定的框架中打開。 |
如對(duì)本文有疑問,請(qǐng)?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會(huì)為你解答!! 點(diǎn)擊進(jìn)入論壇
Powered by 365建站網(wǎng) RSS地圖 HTML地圖
copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號(hào)