remplacer un paramètre dans une url
J'ai eu à faire aujourd'hui un travail en JavaScript, où je passais des variables par URL via un bout de javascript. Une des variables que je devais passer a l'URL pouvait être déjà présente dans l'url, il fallait donc la rechercher et la remplacer et sinon l'ajouter.
//js
<script type="text/javascript" >
function replaceUrlParams(url,param,value) {
var rx = new RegExp("([?|&])" + param + "=.*?(&|$)","i");
if (url.match(rx)) return url.replace(rx,'$1' + param + "=" + value + '$2');
else return url + '&' + param + "=" + value;
}
</script>
on peut changer en fonction de la valeur contenu dans un select:
// html
<select onchange="window.location = replaceUrlParams(window.location+'','param',this.value)">
<option> param_1</option>
<option> param_2</option>
<option> param_3</option>
</select>