Voici une autre approche. Le code est un peu plus, comme la chaîne de recherche est analysé pour créer un mappage des paramètres puis construire à nouveau ensemble (cela devrait fonctionner avec tous les paramètres alors):
var searchTerms = document.location.search.substr(1).split('&');
var parameters = {};
for(var i = 0; i < searchTerms.length; i++) {
var parts = searchTerms[i].split('=', 2);
parameters[parts[0]] = parts[1];
}
parameters['opr'] = 'sales-' + document.getElementById('selectboxID').value;
searchTerms = [];
for(var key in parameters) {
if(parameters.hasOwnProperty(key)) {
searchTerms.push(key + '=' + parameters[key]);
}
}
document.location.search = searchTerms.join('&');
Référence: document.location
Working Demo (J'utilise jQuery seulement pour la démonstration, le code réel est celui indiqué ci-dessus)
merci, cela a fonctionné et belle démo aussi, merci encore –