Home

Tags

Изменение GET параметров в url на JavaScript

2010-07-16 web javascript

Данная функция изменяет get параметр в адресной строке, при этом на серверной стороне не нужно делать построение/суммирование get параметров и т.п. Её удобно использовать когда на странице есть несколько изменяемых параметров.

function setAttr(prmName,val){
    var res = '';
	var d = location.href.split("#")[0].split("?");
	var base = d[0];
	var query = d[1];
	if(query) {
		var params = query.split("&");
		for(var i = 0; i < params.length; i++) {
			var keyval = params[i].split("=");
			if(keyval[0] != prmName) {
				res += params[i] + '&';
			}
		}
	}
	res += prmName + '=' + val;
	window.location.href = base + '?' + res;
	return false;
}

Использование
<a href="#" onclick="return setAttr('sort','name')">Сортировка по Имени</a>