尝试使用JQuery的自动完成功能和ajax调用结果

时间:2009-03-31 21:10:31

标签: javascript jquery autocomplete

我有一个50000+的行表,所以我无法将所有行加载到每个页面中以供用户使用自动完成,所以我试图通过extraParams参数使用ajax调用,但不知道:

1)在通过ajax调用的页面上显示结果的格式(在这种情况下为get-dropdown-results.xml)

2)如何将这些结果纳入下拉列表

这是我目前的来源:

$("input#autocomplete-field").autocomplete(
    "/ajax/get-dropdown-results.xml",{
    delay:0,
    minChars:3,
    matchContains:true,
    matchSubset:false,
    max:100,
    extraParams: {
        q: function () { return escape($("input#autocomplete-field").val()); }
    }
});

我正在运行firebug所以我可以看到正确的ajax调用(/ajax/get-dropdown-results.xml?q=whatever-they-typed)但是我不知道在哪里放置代码来处理返回的文字。

1 个答案:

答案 0 :(得分:3)

我假设您使用jQuery autocomplete plugin by Dylan Verheul。此插件将自动为您创建下拉弹出窗口。但是,它希望结果是纯文本格式,而不是XML。尝试返回由行结束分隔的结果:

foo\n
bar\n
baz\n