Есть фильтрация с инпутами, селектами, и всё отлично: при событии submit формы происходит History.pushState() (использую библиотеку с полифиллом), где объект состояния – serializeArray() от формы и при событии statechange отправляется ajax-запрос для выборки товаров, а также устанавливаются значения инпутов и селектов. Однако serializeArray сохраняет только name и value (id совпадает с name), прохожу циклом и меняю значения полей:
$.each(State.data, function (key, object) {
$("#" + object.name).val(object.value).trigger('change');
})
Теперь добавились чекбоксы, они в виде массива: name = hardness[]. Как же их восстановить из объекта состояние History. Как вариант, вызывать не serializeArray, а перебрать циклом все нужные элементы формы, чтобы id тоже положить в массив.
Возможно, у меня изначально кривой подход и вообще стоит все сделать по-другому?