Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.05.2019, 14:40
Профессор
Отправить личное сообщение для Янковиц Посмотреть профиль Найти все сообщения от Янковиц
 
Регистрация: 17.11.2014
Сообщений: 314

Вставка get запроса в урл
На некое событие вешаю ajax:
var data = { action : 'sort_product', order : order, orderby: _this.data('orderby'), term : _this.data('term') };
$.ajax({
	url : ajaxurl,
	type: 'post',
	data: data,
	success: function(data){
		$('#loop').empty().html(data);
		// как вставить строку get запроса в url браузера?
		// делаю так:
		history.pushState('', '', window.location.pathname+'?'+$.param(data));
		// но в урл что-то не понятное: [url]http://site.ru/?0=%3C&1=p&2=r&3=e&4=%3E&5=A&6=r&7=r&8=a&9=y&10=%0A&11=(&12=%0A&13=+&14=+&15=+&16=+&17=%5B&18=a&19=c&20=t&21=i&22=o&23=n&24=%5D&25=+&26=%3D&27=%3E&28=+&29=s&30[/url]
	}
});
Ответить с цитированием
  #2 (permalink)  
Старый 22.05.2019, 14:55
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 960

var data = { action: 'sort_product', order: order, orderby: _this.data('orderby'), term: _this.data('term') };
$.ajax({
	url: "ajaxurl",
	type: "post",
	data: data,
	success: function(data){
		$("#loop").empty().html(data);
		var url = new URL(window.location);
		url.search = new URLSearchParams(data);
		history.pushState("", "", url);
	}
});


Но зачем пустое состояние??? Может лучше так?
var data = { action: 'sort_product', order: order, orderby: _this.data('orderby'), term: _this.data('term') };
$.ajax({
	url: "ajaxurl",
	type: "post",
	data: data,
	success: function(data){
		$("#loop").empty().html(data);
		window.location.hash = new URLSearchParams(data);
	}
});

Последний раз редактировалось Malleys, 22.05.2019 в 14:59.
Ответить с цитированием
  #3 (permalink)  
Старый 22.05.2019, 15:03
Профессор
Отправить личное сообщение для Янковиц Посмотреть профиль Найти все сообщения от Янковиц
 
Регистрация: 17.11.2014
Сообщений: 314

Спасибо большое
Ответить с цитированием
  #4 (permalink)  
Старый 22.05.2019, 15:03
Профессор
Отправить личное сообщение для Янковиц Посмотреть профиль Найти все сообщения от Янковиц
 
Регистрация: 17.11.2014
Сообщений: 314

Интресно, возможно удалить пустые параметры?
Ответить с цитированием
  #5 (permalink)  
Старый 22.05.2019, 15:19
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 960

Вы имеете в виду такое?
var data = { action: 'sort_product', order: order, orderby: _this.data('orderby'), term: _this.data('term') };
$.ajax({
	url: "ajaxurl",
	type: "post",
	data: data,
	success: function(data){
		$("#loop").empty().html(data);
		var params = new URLSearchParams(data);

		for(const [key, value] of new URLSearchParams(params)) {
			if(value === "") params.delete(key);
		}

		window.location.hash = params;
	}
});
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание Get запроса Fck_This Общие вопросы Javascript 3 24.01.2017 13:59
APi Яндекс.Карт | Вставка данных из JSON запроса MasterDmx AJAX и COMET 1 10.11.2014 14:24
Как приостановить выполнение скрипта до получения результата AJAX запроса? Хиросим AJAX и COMET 9 31.10.2011 08:56
Проблема с событиями после ajax запроса Mirgorod AJAX и COMET 5 12.06.2010 17:24
отмена запроса HelpeR AJAX и COMET 5 16.02.2010 15:24