Параметры фильтра в URL без ручной склейки

16.02.2020 · JavaScript

Параметры фильтра в URL без ручной склейки

Фильтр работает до первого пробела или амперсанда в поисковом запросе. Склейка строк смешивает данные с разделителями адреса. Передайте кодирование объекту URL.

const url = new URL(window.location.href);
url.searchParams.set("q", "гайки & болты");
url.searchParams.delete("page");
window.location.assign(url.toString());

Остальные параметры сохранятся, а пагинация сбросится. set заменяет все значения одного ключа; для нескольких выбранных категорий понадобятся append и getAll. Сервер всё равно должен проверять значения. Проверьте кириллицу, знак плюса и пустой запрос.

Назад в блог

От идеи —
к первому шагу.

Расскажите, что хотите создать.
Обсудим задачу и наметим следующий шаг.