фон
У меня есть несколько выпадающих списков на странице. Если вы измените первый, остальные выпадающие списки будут обновлены в соответствии с тем, что вы выбрали.
В нашем случае мы имеем дело с данными фонда. Итак, первое раскрывающееся меню - "Все типы фондов". Вы выбираете "Hedge Funds", а следующий раскрывающийся список фильтруется опциями, которые применяются только к хедж-фондам.
Теперь клиент просит меня поместить текстовое поле в микс, который, когда пользователь начнет печатать, будет влиять на эти результаты.
Итак, если они набирают "USD", второй выпадающий список будет содержать только опционы, у которых есть средства с "USD" в названии.
Проблема
Конкретная проблема, с которой я сталкиваюсь, заключается в том, что с кодом, который я использую:
$('#Search').keypress(function () {
// trigger the updating process
});
Он запускает поиск для каждого нажатия клавиши. Поэтому, когда я печатаю "USD", я получаю сразу 3 запроса - один для "U", один для "US" и один для "USD".
Я пробовал установить таймаут с этим:
$('#Search').keypress(function () {
// I figure 2 seconds is enough to type something meaningful
setTimeout(getFilteredResultCount(), 2000);
});
но все, что вам нужно, - подождать 2 секунды, прежде чем делать то, что я описал.
Я уверен, что эта проблема была решена раньше. Может кто-нибудь предложить, как решить эту проблему?