有些時候可能會出現像 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 動作的小技巧
我個人會比較喜歡下面的流程:
新增商品->填寫資料與上傳圖片->商品上架
感謝哦!
解決了我的問題.