我想實現一個自動完成文本框,其值由返回XML內容的遠程腳本生成。我使用JQuery-1.4.3和JQuery-UI-1.8.5中的自動完成小部件。jquery:遠程xml源的自動完成
我已經研究了XML data parsed once例如自動完成演示頁,並想實現的評論:
這也應該作爲對如何解析遠程XML數據源的引用 - 解析將只發生在源回調中的每個請求。
作爲一個測試,我試圖讓這個工作與提供的XML演示。上面的評論表明,自動完成'source'屬性必須用Ajax調用來替換。然而,當我在demo page提供的功能修改這個,我沒有收到與下面的自動完成功能的任何結果:
$("#birds").autocomplete({
source: function(request, response) {
$.ajax({
url: "london.xml",
dataType: "xml",
success: function(xmlResponse) {
var data = $("geoname", xmlResponse).map(function() {
//alert($('name', this).text());
return {
value: $("name", this).text() + ", " +
($.trim($("countryName", this).text()) || "(unknown country)"),
id: $("geonameId", this).text()
};
}).get();
}
})
},
minLength: 0,
select: function(event, ui) {
log(ui.item ?
"Selected: " + ui.item.value + ", geonameId: " + ui.item.id :
"Nothing selected, input was " + this.value);
}
});
不過,註釋掉簡單調試彈出消息顯示,Ajax調用並設法檢索用於構建數據的值。我的錯誤在哪裏?
任何幫助非常感謝!
親切的問候,
羅恩·範登布蘭登