L'utilizzo dei parametri nell'url, noti anche come query parameters, è una pratica molto diffusa soprattuto nel mondo delle web API. Grazie ad essi si definiscono dei filtri o dei parametri aggiuntivi al semplice url.
Ma i query parameters sono molto importanti anche sul lato client-side. Permettono infatti di mantenere lo stato della pagina, consentendo a JavaScript di utilizzarli per ripristinarne lo stato.
La difficoltà avviene nel momento in cui dobbiamo leggere questi valori. Infatti non vi è una convenzione sul nome, sappiamo solo che sono definiti successivamente al carattere "?".
Uno dei metodi più facili per leggere questi parametri consiste nell'utilizzo delle funzioni slice e split utilizzando windows.location.href, recuperando la parte di stringa successiva al "?" e suddividendo per "=", ma in questo script andremo ad analizzare l'interfaccia URLSerarchParams
Inizializziamo una variabile che ci consentirà di recuperare i parametri.
var params = new URLSearchParams(window.location.search);
Per conoscere il valore di un parametro potremmo quindi utilizzare il metodo get.
var val = params.get('nome');
Se volessimo invece conoscerne solo l'esistenza abbiamo a disposizione has.
var trueOrFalse = params.has('nome');
Nel caso in cui vi sia un duplice valore, es: 'nome=morgan&nome=pizzini', dobbiamo necessariamente utilizzare il metodo getAll, che ci restituirà un array di valori.
var values = params.getAll('nome');
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- Creare un adorner personalizzato per le trading cards di PivotViewer in Silverlight 5.0
- Copiare uno Stream con il .NET Framework 4.0
- Supporto alla validazione client-side in una data annotation su ASP.NET MVC 3
- Disabilitare automaticamente un workflow di GitHub (parte 2)
- Dependency injection con Minimal API di ASP.NET Core
- Migliorare l'organizzazione delle risorse con Azure Policy
- Sfruttare una CDN con i bundle di ASP.NET
- Creare applicazioni in real-time con ASP.NET SignalR
- Memorizzare posizione e dimensioni della finestra di una applicazione OOB Silverlight 4.0
- Web Camp - HTML5 per il web di oggi