Проблема заключается в том, что изменение значения поля input через JavaScript не вызывает событие change, которое было бы обработано вашим обработчиком filterSend. Поэтому, когда вы изменяете значение поля input программно, обработчик не запускается, и данные не отправляются до тех пор, пока пользователь не вручную изменит значение поля.
Чтобы решить эту проблему, вы можете явно вызвать событие change после изменения значения поля input. Например:
```javascript
$('.main-filter__check-box, .range-min, .range-max').change(filterSend);
// После изменения значения input
$('input').val('новое значение').trigger('change');
```
Этот код вызовет обработчик filterSend после изменения значения input программно.
Если вы используете jQuery, вы также можете воспользоваться функцией .triggerHandler() для вызова обработчиков событий без генерации реального события:
```javascript
$('.main-filter__check-box, .range-min, .range-max').change(filterSend);
// После изменения значения input
$('input').val('новое значение').triggerHandler('change');
```
Этот код также вызовет обработчик filterSend после изменения значения input программно, но не сгенерирует фактическое событие change.