Ajouter ou modifier un paramètre de requête URL avec JavaScript
Concept et utilisation
La fonction urlQuerySet()
permet d'ajouter ou de modifier des paramètres de requête à une URL.
Fonction
urlQuerySet()
Ajoute ou modifie des paramètres de requête d'URL.
- Syntaxe
urlQuerySet(parametres, url);
- Paramètres
parametres
(Object)Le paramètre
parametres
de la fonctionurlQuerySet()
définit un object de paramètres de requêtes à ajouter ou modifier dans une URL.url
(String)Le paramètre
url
de la fonctionurlQuerySet()
définit l'URL contenant les paramètres de requêtes à ajouter ou modifier.
Si ce paramètre est omis, l'URL de la page sera utilisée.
Exemple de modification des paramètres de requête d'une URL
var parametres = {
'cle1': 'valeur1',
'cle2': 'valeur2'
};
var url = 'https://www.domain.ext/';
urlQuerySet(parametres, url);
// renvoie : 'https://www.domain.ext/?cle1=valeur1&cle2=valeur2'
Code source de la fonction
function urlQuerySet(a, b) {
var c = JSON.parse(JSON.stringify(a)),
d = ('' + (b || window.location.href)).split('#'),
e = d[0].split('?'),
f = e[0],
g = '?';
if (e[1]) {
var p = ('' + e[1]).split('&');
if (p[0]) {
var i, j, k;
for (i = 0, j = p.length; i < j; i++){
k = p[i].split('=');
if (typeof k[0] === 'string' && typeof a[k[0]] === 'undefined') {
c[k[0]] = k[1];
}
}
}
}
for (i in c) {
g += i + '=' + ((typeof c[i] === 'string') ? encodeURIComponent(c[i]) : true) + '&';
}
return f + g.replace(/\&$/,'') + (d[1] ? '#' + d[1] : '');
}
Dernière mise à jour le .