2011-04-20 29 views
0

我想基于几个来源使用自动完成。例如。在脸谱图和我自己的数据库中搜索。 很明显,Facebook的搜索速度不及我的分贝。这就是为什么我想为每个女巫发起一些Ajax请求(每个来源=>单独的控制器)。自动完成与几个来源(异步查询)

在请求“成功”事件之后,我想立即添加结果自动填充字段,而不需要执行任何其他操作,如键入新字母。

P.S. JQuery UI Autocomplete帮助不大。 因为:

  1. 搜索结果Addind图片 - 是一个插件。
  2. 可以设置一些 阵列搜索结果,并加入到 自动完成的搜索结果,但 我会打字 新函后看到了新的成绩。

P.P.S作为搜索结果,我需要图像,名称,2-3个额外的参数。

预先感谢您!

+0

@sdf - 请分享您已完成的一些代码片段,让我们知道发生了什么。 – 2011-04-20 14:35:36

+0

所以你有什么问题呢? – 2011-04-20 14:36:32

+0

@sdf:jQueryUI自动完成能够克服(1)和(2)。我相信(1)可能没有插件(请参阅'自定义数据和显示'演示)。 (2)您可以通过手动触发自动完成中的事件来完成。 – 2011-04-20 14:38:30

回答

0

Both and 可能与jQueryUI的自动填充小部件。

  1. 您可以通过重新定义_renderItem方法,就像在this example定制的插件的项目显示:

    $("#autocomplete").autocomplete({...}) 
        .data("autocomplete")._renderItem = function(ul, item) { 
         return $("<li></li>") 
          .data("item.autocomplete", item) 
          .append("<a>" + item.label + "<br>" + item.desc + "</a>") 
          .appendTo(ul); 
        }; 
    
  2. 可以使用自动完成的API触发自动完成的search方法

    $("#autocomplete").autocomplete("search", "foo"); 
    

希望帮助!自动完成是一个令人惊讶的强大的小部件,并且如果遇到更多问题,StackOverflow上还有很多问题应该能够提供帮助。

0

在你走得太远之前,在Facebook上运行一些测试搜索。如果您在Facebook中使用了自动填充框,图表api的搜索不会返回您会得到的结果。它针对搜索查询所在的搜索进行了调整。我曾经描述过一次创建自动完成功能,结果不值得。

我喜欢它,如果他们让自动填充可用。