2010-10-27 29 views
5

Diciamo che ho davvero un semplice modulo HTML:Il tipo di input HTML invia valore senza modificare il valore di post?

<form action="./whatever.php" method="POST"> 
    <input type="submit" name="TheButton" value="Apples"> 
</form> 

Il che naturalmente rende il pulsante l'utente vede dire Mele. Voglio che la richiesta di post sia TheButton=Oranges ... C'è un modo semplice per gestirlo in HTML, o dovrò fare qualcosa con un'azione = javascript?

risposta

9

Il modo più semplice è:

<button type="submit" name="TheButton" value="Oranges">Apples</button> 

... ma questo si romperà in Internet Explorer (IIRC, fino al versione 7).

Se si dispone di un solo pulsante per affrontare poi:

<input type="submit" value="Apples"> 
<input type="hidden" name="TheButton" value="Oranges"> 

... funzionerà bene.

In caso contrario, l'approccio migliore è quello di utilizzare la logica lato server:

<input type="submit" name="TheButton_Oranges" value="Apples"> 

E guarda per un valore che inizia con TheButton_ e poi estrarre il valore dal nome. È un brutto scherzo, ma è affidabile e non dipende dal lato client JS.

Problemi correlati