Come funziona Digg rimuovere “& x = 0 & y = 0” dal loro URL risultati della ricerca?
-
21-09-2019 - |
Domanda
sto usando un'immagine come il pulsante di invio per un modulo di ricerca, cioè .:
<input id="search" type="image" alt="Search" src="/images/searchButton.png" name=""/>
Questo ha un effetto sfavorevole lato in Chrome e Firefox - i parametri e x = 0 & y = 0 appaiono sul fine dell'URL risultati di ricerca, ad esempio se cerco di "cibo" Sono indirizzato alla pagina:
main/search?search=food&x=0&y=0
Alcuni caccia intorno online ha indicato che questo è il comportamento standard quando si utilizza un'immagine per presentare un modulo.
Ho notato che Digg.com utilizza un'immagine a presentare il suo modulo di ricerca, ma evita questo comportamento. Io non riesco a capire come lo fanno. Non sembrano essere utilizzando Javascript per inviare il modulo. Qualcuno può dire?
Soluzione
Digg è usando JavaScript per farlo. Provare a inviare il modulo di ricerca con JavaScript disabilitato nel tuo browser.
Altri suggerimenti
Invece di usare un <input type="image">
, è possibile utilizzare un elemento <button>
:
<button type="submit" style="border: 0; background: transparent">
<img src="image.png"></img>
</button>
Questi parametri indicano la posizione in cui lo scatto è stata esercitata su l'immagine, che è il comportamento di default della maggior parte, se non tutti i browser, quando si tratta di utilizzare le immagini dei bottoni di invio. È possibile utilizzare una soluzione che passa essenzialmente attraverso JavaScript per inoltrare il modulo, molto simile a quello che si vede nell'esempio di Watain. Oppure si può creare un submit quello non è un elemento del modulo dei pulsanti, utilizzando form.submit () come l'azione collegata a quell'immagine.
Si potrebbe utilizzare Javascript per inviare il modulo del genere, è ancora il modo più semplice:
<script>
yourForm.onSubmit = function() {
location.href = 'main/search?search=' + encodeURIComponent(yourForm.elements['query'].value);
return false;
}
</script>
Purtroppo non so come lo fanno senza Javascript.
EDIT:. Btw si potrebbe anche utilizzare un semplice che inviare il modulo quando viene cliccato