По какой-то причине запросы ajax, которые я делаю на веб-сайте, я работаю над прерыванием в половину времени. Это разрешается, когда я устанавливаю тайм-аут для запроса ajax, как показано ниже.jQuery autocomplete timeout
$.ajax({
url: "/question/why_wont_it_work",
timeout : 1000,
success: function(){ /*do stuff*/ }
});
К сожалению, исправление таймаута, похоже, не работает с автозаполнением jquery. Я использую это так:
$("#questionTags").autocomplete({
source: "/question/tags",
timeout: 1000,
select: function(event, ui) { /*do stuff*/ },
});
Я проверил документацию jQueryUI на веб-сайте и не видел опцию тайм-аута там. Теперь это довольно раздражает, так как половина моего запроса будет отменена, и я не получу результатов Я хочу. Есть ли способ обойти это?
Заранее спасибо.
Ваш источник автозаполнения, требующий остановки сервера? Сколько данных вы работаете? Обычно люди не хотят ждать 20 секунд для заполнения автозаполнения, поэтому я предлагаю сделать это быстрее. –
20 секунд действительно слишком длинный, поместите его туда, чтобы убедиться, что таймаут не будет проблемой для прерывания. – Ilians
Я новичок в jQuery, и мне потребовалось некоторое время, чтобы понять, что для моего долгого автозаполнения запроса, если я потерял фокус на поле автозаполнения (скажем, чтобы проверить firebug), результаты автозаполнения не будут отображаться, даже если запрос AJAX был успешным. – WattsInABox