FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 4651|回复: 6
打印 上一主题 下一主题

关于自动补全不想要缓存问题

[复制链接]
跳转到指定楼层
楼主
发表于 2013-10-20 04:46:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 亦颖 于 2013-10-20 04:47 编辑

  1. <P>
  2. function onReady() {
  3.             var textbox1ID = '<%= TextBox1.ClientID %>';</P>
  4. <P>            var cache = {};</P>
  5. <P>            $('#' + textbox1ID).autocomplete({
  6.                 minLength: 2,
  7.                 source: function (request, response) {
  8.                     var term = request.term;
  9.                     if (term in cache) {
  10.                         response(cache[term]);
  11.                         return;
  12.                     }</P>
  13. <P>                    $.getJSON("search.ashx", request, function (data, status, xhr) {
  14.                         cache[term] = data;
  15.                         response(data);
  16.                     });
  17.                 }
  18.             });</P>
  19. <P>        }</P>
复制代码
上述为FineUI范例中前台源代码,我希望用户每输入一个值都去调用search.ashx,但代码改造为如下,却没有任何效果(经测试用户在输入框中输入过的值依然被cookies保存,不会每次去调用search.ashx代码,大家可以一起测试一下就知道了),不知道为什么还会有缓存,要如何才能实现每次都调用search.ashx呢?
改造后的代码
  1. function onReady() {
  2. var textbox1ID = '<%= TextBox1.ClientID %>';

  3. $('#' + textbox1ID).autocomplete({
  4. source: 'search.ashx',
  5. minLength: 1
  6. });

  7. }
复制代码

沙发
 楼主| 发表于 2013-10-21 04:27:26 | 只看该作者
顶一个!希望有人帮助解决一下!
板凳
发表于 2013-10-21 09:16:32 | 只看该作者
URL中加个时间节点
地板
发表于 2013-10-21 10:02:43 | 只看该作者
$.getJSON("search.ashx?r=" +Math.random() , ............................
5#
发表于 2013-10-21 11:46:32 | 只看该作者
楼上的方法不错,另外search.ashx返回结果时加上缓存控制的Header(比如Cache-Control:no-cache)是否可行?
6#
发表于 2013-10-21 12:33:40 | 只看该作者
每次使用不同的参数,就不会缓存了。 (比如前面说的,参数中加时间或随机数)
7#
 楼主| 发表于 2013-10-21 21:30:47 | 只看该作者
黑冰.cn 发表于 2013-10-21 10:02
$.getJSON("search.ashx?r=" +Math.random() , ............................

黑冰,方法不错有效。
谢谢,大家都讲到点子上了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-6-17 02:01 , Processed in 0.046024 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表