【问题标题】:jQuery autocomplete - get response without changing request?jQuery自动完成 - 在不更改请求的情况下获得响应?
【发布时间】:2012-10-06 01:47:22
【问题描述】:

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

看起来像这样:

通常 suggest_address.php 返回一个由 labelvalue 组成的关联数组.

但由于 suggest_address.php 确定输入是“zip”类型还是“city”类型,我返回一个额外的键/值对:“type”:“city”或“type” " : "压缩包"。

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

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

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

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

【问题讨论】:

    标签: javascript jquery autocomplete jquery-autocomplete


    【解决方案1】:

    您的每个响应的数据对象可以包含您想要的任何其他键/值对。然后它们被包含在事件处理程序的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 现场演示示例 clcik:

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

    【讨论】:

    • 太棒了!正是我想要的。非常感谢。
    • 应该通过响应数据为您想要的任何级别的创造力打开大门
    猜你喜欢
    • 2011-02-14
    • 1970-01-01
    • 2019-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-22
    • 1970-01-01
    • 2010-10-25
    相关资源
    最近更新 更多