2012-06-04 2 views
0

В соответствии с этим вопросом, мы используем deboucing сделать живой поиск как FacebookAjax Live Search множественный ответ на время

Facebook Style AJAX Search

Но вот мой случай, когда я установить тайм-аут, как 300мс, первый Я печатаю запрос A и дожидаюсь 300 мс, тогда запускается запрос ajax, но, ожидая ответа сервера на запрос A, я делаю еще один запрос B, и после 300 мс наконец появляется ответ на запрос A, а затем сразу ответ для запрос B также появляется, поэтому вы видите, что 2 результата мигают, как это предотвратить? (Отменить первый запрос или что-то?)

ответ

1

В зависимости от того, сколько результатов вы возвращаетесь я вижу 2 возможных действий:

  • Не делает новый запрос, но ждать, пока старый, чтобы закончить и фильтровать с новым значением поиска
  • Отмените первый запрос и запустите другой.

Первый способ будет работать только тогда, когда первый запрос возвращает больше элементов, чем отображаются.