2012-10-16 63 views
0

我正在使用jQuery的autocomplete函數從提取可能的輸入標籤/值suggest_address.phpjQuery自動完成 - 獲取響應而不更改請求?

它看起來像這樣:

enter image description here

通常suggest_address.php返回標籤的關聯數組。

但自suggest_address.php確定輸入的類型是「zip」還是輸入「city」,我返回一個附加的鍵/值對:「type」:「city」或「type」:「zip 」。

我想將此值作爲屬性存儲在輸入框中,以便它可以在以後的查詢中使用。

我如何做到這一點? 我知道source自動完成功能的參數可能是一個接收請求和響應的函數,但是如何在不修改源的情況下從中獲取響應?

現在我的初始化看起來是這樣的:

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

回答

2

每個響應您的數據對象可以包括任何你想要的其他鍵/值對。然後他們被納入事件處理程序的參數ui

對於下列API演示exeample

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


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

有關 「查看源文件」 一jQueryUI的現場演示例子clcik:

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

+0

好極了!正是我在找什麼。萬分感謝。 –

+0

應該爲響應數據打開任何你想要的創造力的大門 – charlietfl