Vorrei creare un pulsante HTML che si comporta come un collegamento. Quindi, quando fai clic sul pulsante, reindirizza a una pagina. Vorrei che fosse il più accessibile possibile.
Mi piacerebbe anche che non ci siano caratteri extra o parametri nell'URL.
Come posso raggiungere questo obiettivo?
Sulla base delle risposte pubblicate finora, sto attualmente facendo questo:
<form method="get" action="/page2">
<button type="submit">Continue</button>
</form>
ma il problema è che in Safari e Internet Explorer aggiunge un punto interrogativo alla fine dell'URL. Devo trovare una soluzione che non aggiunga caratteri alla fine dell'URL.
Ci sono altre due soluzioni per farlo: usare JavaScript o definire uno stile come un pulsante.
Utilizzando JavaScript:
<button onclick="window.location.href='/page2'">Continue</button>
Ma questo ovviamente richiede JavaScript, e per questo motivo è meno accessibile agli screen reader. Il punto di un collegamento è di passare a un'altra pagina. Quindi, cercare di far funzionare un pulsante come un collegamento è la soluzione sbagliata. Il mio suggerimento è che dovresti usare un link e disegnarlo come un pulsante .
<a href="/link/to/page2">Continue</a>
GET
che fallisca. Penso ancora che l'uso di un collegamento abbia senso con l'avvertenza che non reagirà alla "barra spaziatrice" quando il pulsante mi piace è attivo. Anche alcuni stili e comportamenti saranno diversi (come trascinabili). Se si desidera la vera esperienza di "collegamento a pulsante", è possibile anche avere reindirizzamenti lato server per la fine dell'URL da ?
rimuovere.
?
l'URL. Ciò è causato dal modulotype="GET"
, cambialo intype="POST"
e?
alla fine dell'URL scompare. Questo perché GET invia tutte le variabili nell'URL, quindi il?
.