2011-11-28 53 views
0

我不明白這一點,如何處理表單中的兩個提交按鈕?

如果我這樣做,我點擊退房按鈕,頁面將不會去退房頁,

<form action="cart.php" method="post" id="form-cart"> 
<button name="update" id="update" type="submit" value="Update cart">Update cart</button> 
<button name="checkout" id="checkout" type="submit" value="Check out">Check out</button> 
</form> 

它只不,如果我改變name="checkout"name="cart-checkout"

<form action="cart.php" method="post" id="form-cart"> 
<button name="update" id="update" type="submit" value="Update cart">Update cart</button> 
<button name="cart-checkout" id="checkout" type="submit" value="Check out">Check out</button> 
</form> 

它的工作原理是這樣,但沒有任何意義,我,你知道我爲什麼它是這樣做的嗎?

所以我試圖用<a>標籤<button>標籤內,它去簽出頁面,

<form action="cart.php" method="post" id="form-cart"> 
<button name="update" id="update" type="submit" value="Update cart">Update cart</button> 
<button name="checkout" id="checkout" type="submit" value="Check out"><a href="checkout.php">Check out</a></button> 
</form> 

但是確實它有效的HTML<a>標籤<button>標籤裏面?

+0

HTML不處理形式的互動,PHP(或其他服務器側腳本)處理輸入。您必須發佈PHP代碼,但我會假設您使用的是其他人編寫的代碼。 – zzzzBov

回答

2

爲什麼不改變按鈕:

<input name="update" id="update" type="submit" value="Update cart"> 
<input name="cart-checkout" id="checkout" type="submit" value="Check out"> 

然後在PHP(上cart.php),你可以這樣做:

<?php 
    if($_POST){ 
    if(isset($_POST['update']){ 
     // process update 
    } else if(isset($_POST['cart-checkout']){ 
     // process cart checkout 
     // or uncomment the below line to forward to checkout.php 
     // header("Location: checkout.php"); 
    } 
    } 
?> 
0

如何做一個<button>,就像<a href="">

-edit-

哎呀,對不起,誤讀。 <button onclick="window.location='/nextpage';">

+0

謝謝湯姆!我想到了這一點,但它看起來與其他提交按鈕不一致,但不會使用該... :-) – laukok

0

我實際上在這裏使用JavaScript和onclick事件,它會將您帶到結帳頁面。

+0

謝謝。我想到了。但是我會在這個階段避免使用js,這樣當js被禁用時,頁面可以回退到html。 – laukok

相關問題