我正在使用jQuery的autocomplete函数从suggest_address.php获取可能的输入标签/值。

看起来像这样:



通常,compose_address.php返回一个标签和值的关联数组。

但是,因为suggest_address.php确定输入是“ zip”类型还是“ city”类型,所以我返回了另一个键/值对:“ type”:“ city”或“ type”:“ zip”。

我想将此值存储为输入框中的属性,以便可以在以后的查询中使用它。

我该怎么做呢?
我知道自动完成功能的source参数可以是接收请求和响应的函数,但是如何在不修改源的情况下从中获取响应?

现在,我的初始化看起来像这样:

$('#addresssearch').autocomplete({
                    source: 'suggest_address.php',
                    minLength: 2
                });

最佳答案

每个响应的数据对象可以包括您想要的任何其他键/值对。然后将它们包含在事件处理程序的ui参数中。

例如

{ label:'Chicago', value:'chicago', bestPizza: 'Chicago Pizza'}


$('#addresssearch').autocomplete({
    source: 'suggest_address.php',
    minLength: 2,
    select: function(event, ui) {
        var pizza = ui.item.bestPizza;
    }
});


对于以下API演示中有关“查看源代码”的jQueryUI实时演示示例,请参见:

http://jqueryui.com/autocomplete/#custom-data

09-10 11:16
查看更多