Я использую Yahoo Autocomplete с удаленным запросом базы данных php и нулевой задержкой. Проблема в том, что иногда результаты старого запроса возвращаются после самого последнего запроса.
Пока что пример, если я ищу новичка, иногда результаты 'beg' переопределяют самый последний результат в выпадающем списке автозаполнения, если этот запрос дольше всего возвращается с сервера.
Я пытался прервать старые запросы, но это замедляет работу пользователей, поскольку они не получают запрос от сервера до последнего нажатия клавиши.
Мне было интересно, есть ли способ заказать запросы, которые возвращаются? Чтобы убедиться, что в ответе сервера на самый последний запрос отображается
Заранее спасибо
David
Есть ли какой-нибудь шанс помочь с секвенированием? Мой код автозаполнения Yahoo в настоящее время, как показано ниже, я хочу, чтобы избежать отмены устаревших запросов.
<script type="text/javascript">
YAHOO.example.autocomplete = function() {
// instantiate remote data source
var oDS = new YAHOO.util.XHRDataSource("../employer/post-job/get_towns.php");
oDS.responseType = YAHOO.util.XHRDataSource.TYPE_XML;
oDS.responseSchema = {
resultNode: 't',
fields: ['n']
};
oDS.maxCacheEntries = 100;
// oDS.queryMatchSubset = true;
// oDS.connXhrMode = "cancelStaleRequests";
// instantiate YUI autocomplete widgets
var oAC0 = new YAHOO.widget.AutoComplete("input1", "inputcontainer", oDS);
oAC0.minQueryLength = 3;
oAC0.queryDelay = 0.05;
oAC0.maxResultsDisplayed = 10;
return {
oDS: oDS,
oAC0: oAC0
};
}();
</script>