[HTML] 判別 Form 動作的小技巧

有些時候可能會出現像 Yahoo! 奇摩拍賣這一種架構,中間必須離開原畫面去處理其它事情。

刊登拍賣商品 -> [上傳圖片] -> 刊登拍賣商品 -> [預覽商品內容]

( [] 內為Submit按鈕 )


流程中靠 POST/GET 的參數傳遞來保留使用者輸入的欄位,因此並不會實際將拍賣商品寫入資料庫。

這種架構 form action 是透過同一支程式來分配應該要處理的動作,但是「上傳圖片」跟「預覽商品內容」實際處理的動作是不一樣的,所以應該是要怎麼判別使用者按下的是「上傳圖片」或「預覽商品內容」?

其實只要透過 submit button 上的 name 就可以知道了。HTML 表單在送出去的時候,只有按下的 submit 按鈕才會被送到 form action 去,所以只要判別 submit button value 就可以知道使用者按下哪一個了。

<FORM method=”POST” ACTION=test.php>
<input type=submit name=”action” value=”a”>
<input type=submit name=”action” value=”b”>
</FORM>

當使用者按下 a 的時候 action=a ,按下 b 則是 action=b。

另外也可以透過 submit button name 來判別:

<FORM method=”POST” ACTION=test.php>
<input type=submit name=”a” value=”派你當”>
<input type=submit name=”b” value=”給蕭郎”>
</FORM>

只要POST/GET的參數裡面有a或b,就可以知道按下的按鈕是哪一個了。

2 comments On [HTML] 判別 Form 動作的小技巧

Leave a reply:

Your email address will not be published.

Site Footer

Sliding Sidebar