Как улучшить производительность этого обновления окна выбора?

У меня есть поле выбора штата, района и колледжей. Когда пользователь выбирает конкретный штат, у меня есть карта state_to_district, которая устанавливает район и отправляет вызовы ajax на сервер, чтобы получить список всех колледжей этого района. Но когда пользователь часто меняет выбор блоков состояния или блоков округа, веб-страница застревает и ее необходимо принудительно закрыть.

Как предлагали другие в моем предыдущем вопросе:- Как обрабатывать большие запросы от клиентов при изменении поля выбора в nodejs

Я пытался использовать функции debounce и Throttle, но без каких-либо улучшений. Веб-страница застревает, когда я изменяю выбор слишком часто...

Тогда я увидел видео на YouTube, в котором реализовано нечто вроде кода, приведенного ниже, который я тоже попробовал, но безуспешно.

Кто-нибудь, пожалуйста, помогите с этим....

   var timer = 0 ;
        $('#select_district').on('change', function district_selection_changed() {

            clearTimeout(timer) ;
            timer = setTimeout(function(){
                $.ajax({
                    type: "post",
                    url: "/getcolleges",
                    data: {
                        state: $("#select_state").val(),
                        district: $("#select_district").val()
                    },
                    dataType: "json",
                    success: function (response) {
                        $("#select_college").html("");
                        collegenameelement = document.getElementById("collegenameslist") ;
                        response.forEach((ele) => collegenameelement.innerHTML =  collegenameelement.innerHTML+
                            `<option>${ele}</option>`)
                    }
                })

            } , 500) ;

0 ответов

Другие вопросы по тегам