martedì 11 luglio 2017

GetURL Javascript: ricavare indirizzo pagina

Tra le varie cose che si possono fare tramite l'utilizzo del javascript, c'è anche la possibilità ricavare l'indirizzo di una pagina web.
Con questo intendo dire che, tramite l'ausilio di un apposito script, è possibile ottenere in una variabile, l'url della pagina corrente, ovvero la pagina internet dove risiede il javascript stesso.

Detta così non sembra una cosa poco utile, lo so.
Ma immaginiamo il caso in cui si vogliano passare parametri tramite tramite url per poi intercettarli in una pagina web che non ha a disposizione alcun linguaggio di scripting (es. php, asp), come si potrebbe fare?
Semplice, con il javascript e la funzionalità che andrò ad illustrare a breve. Sarà infatti possibile ricavare l'intero indirizzo di una pagina web, compresa di parametri passati con il metodo GET, ovvero via url.


Come ricavare l'indirizzo completo di una pagina con il Javascript (GetURL)


Ho usato il termine GetUrl per venire in contro a chi proviene da altri linguaggi per il web, ma la funzione per poter ricavare l'url di una pagina tramite javascript è la seguente:

<script type="text/javascript">
alert(window.location.href);
</script>


Utilizzando infatti window.location.href, potremo stampare a video l'intero indirizzo web della pagina html che contiene il nostro javascript.

Se poi vogliamo ricavare i parametri passati nell'url, le variabili insomma, ci basterà salvare il risultato dentro una variabile e parsare il tutto.
Ad esempio, se volessi avere un alert per tutte le variabili passate via url, comprese di valore, potrei fare uno script del genere:

<script type="text/javascript">
indirizzo=window.location.href;
par=indirizzo.substring(indirizzo.indexOf("?")+1);
parametri=par.split("&");
for(i=parametri.length;i>0;i--)
{
    variabili=parametri[i-1].split("=");
    alert("Variabile "+variabili[0]+"="+variabili[1]);
}
</script>


Dove nell'url potreste fare una prova scrivendo una cosa del genere
pagina.html?var1=4&var2=23&var3=cc

E per il js di oggi è tutto, buon coding :)

Piaciuto l'articolo? Lascia un commento!

EmoticonEmoticon