2009-10-02 10 views
28

So che ci sono molti trucchi per fare collegamenti, ad esempio <a href="?query=string"> si collegherà alla pagina corrente dopo aver aggiunto la stringa di query. C'è un modo per tornare alla pagina corrente, dopo aver rimosso la stringa di query senza scrivere semplicemente il nome del file?Collegamento alla pagina corrente senza stringa di query

Esempio, alla pagina foo.php?q=3, voglio collegarmi a foo.php. C'è un modo di tipo scorciatoia per fare questo? Il file verrà rinominato più volte, quindi non voglio digitare un gruppo di collegamenti e quindi doverli modificare in seguito.

Modifica: Anche se si tratta di file PHP, sto cercando di evitare una soluzione lato server per questo particolare problema.

+0

p.s. a chiunque pensi alle ancore ..... a quanto pare la comunità non le gradisce così tanto che chiunque le pubblichi come soluzione verrà downvoted nell'abisso di parentesi angolari – BozoJoe

risposta

48
href="?" 

Non esattamente che cosa siete dopo - c'è ancora un punto interrogativo alla fine - ma funzionalmente equivalenti.

+1

Anche se questo è vecchio, sto inviando e commentando perché è ancora rilevante , ed è l'unico modo non sul lato server per fare ciò (che posso dire) che funziona su entrambi gli URL di estensione e senza estensione. – trnelson

2

Si desidera un equivalente lato client a $_SERVER['PHP_SELF']? Qualcosa che si collegherà sempre al file senza materiale aggiuntivo dopo l'estensione?

non sono sicuro se questo funziona in tutti i browser, ma funziona benissimo in Firefox 3.5:

<a href="">Foo</a> 
+0

Non cancella la stringa di query esistente. –

+0

+1 As $ _SERVER ['PHP_SELF'] era in realtà la soluzione di cui avevo bisogno. – ajcw

+1

'Foo' Sfortunatamente, non funziona in IE. Da: http://msdn.microsoft.com/en-us/library/cc848861%28v=vs.85%29.aspx - _Se HREF è specificato come valore vuoto (href = "" o href =), l'esecuzione del collegamento potrebbe visualizzare la directory contenente il documento corrente oppure potrebbe generare un errore, a seconda di altri elementi nel documento e dell'ambiente server ._ –

-1

si può collegare alla pagina corrente siete sulla buona con:

<a href="#">blah</a> 
+5

Questo non esegue una nuova richiesta al server in tutti i browser. –

+2

Non penso che esegua una nuova richiesta in nessun browser. – JJJ

14

È possibile utilizzare <a href="."> per ricaricare la pagina corrente, rimuovendo la stringa di query.

Vedere this per una risposta più dettagliata.

+3

Questo non funziona in IE 11, ma il? lo fa. – Mint

+1

Questo non funziona con URL senza estensione, sfortunatamente. Questa è la tecnica che ho usato esclusivamente fino a quando ho incontrato questo problema. – trnelson

Problemi correlati