V dnešnom príspevku si ukážeme kúsok kódu, ktorý je ale skutočne efektívny a užitočný pri tvorbe web stránok. V tomto kóde vieme zmeniť parameter v URL adrese pomocou jQuery bez načítania stránky.
function getURLParameter(name) {
return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search)||[,""])
[1].replace(/\+/g, '%20'))||null;
}
function changeUrlParam (param, value) {
var currentURL = window.location.href+'&';
var change = new RegExp('('+param+')=(.*)&', 'g');
var newURL = currentURL.replace(change, '$1='+value+'&');
if (getURLParameter(param) !== null){
try {
window.history.replaceState('', '', newURL.slice(0, - 1) );
} catch (e) {
console.log(e);
}
} else {
var currURL = window.location.href;
if (currURL.indexOf("?") !== -1){
window.history.replaceState('', '', currentURL.slice(0, - 1) + '&' + param + '=' + value);
} else {
window.history.replaceState('', '', currentURL.slice(0, - 1) + '?' + param + '=' + value);
}
}
}
// použitie
changeUrlParam('nazovParametra','hodnota');