jQuery Автозаполнение кеша после выбора? - PullRequest
1 голос
/ 06 июля 2011

Итак, я придумал этот скрипт, который ajax вызывает предложения Google, а JSONP возвращает результаты поиска.С помощью Decad мне удалось реализовать Autocomplete, но, похоже, я застрял на незначительной проблеме, которую я пытался решить.

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

Вот рабочая скрипка: http://jsfiddle.net/WUcpC/1/ и вот предварительный просмотр моей проблемы: http://www.screenr.com/DKBs

Любые предложения и помощь приветствуются.Большое спасибо

Ответы [ 2 ]

2 голосов
/ 06 июля 2011

Internet Explorer всегда кэширует вызовы AJAX, тогда как другие браузеры ведут себя по-разному. Поэтому нам лучше явно указать браузеру, следует ли кэшировать AJAX. С помощью jQuery мы можем сделать это, просто набрав:

Попробуйте:

 $.ajaxSetup ({  
     cache: false  
 });
1 голос
/ 06 июля 2011

Если вы используете IE, возможно, IE кэширует GET-запросы.Даже если вы явно установите значение кэша в false.попробуйте добавить параметр nocache:

 var noCache = new Date().getTime();

, затем добавьте его в URL

url: 'http://suggestqueries.google.com/complete/search?qu=' + encodeURIComponent($('#q').val())+'&nocache='+noCache, 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...