[英]Jquery UI autocomplete show all data
我正在使用使用JSON解析的JQuery的自動完成小部件,但不起作用,顯示所有json數據。
請幫我
這是我的腳本:
$(function() {
$( "#test2" ).autocomplete({
source: function( request, response ) {
$.ajax({
url: "http://some_link/folder/file.json",
dataType: "json",
data: {terms: request.term},
success: function( data ) {
response( $.map( data, function( item ) {
return {
label: item.city+' ('+item.country_name+'), '+item.currency,
value: item.city
}
}));
}
});
},
minLength: 2,
});
});
這是json
[{"country_name":"DENMARK","city":"Aalborg","currency":"EUR"},{"country_name":"DENMARK","city":"Aarhus","currency":"EUR"}]
這是HTML
<div class="form-box">
<center><label style="color:white;">City <small>*</small></label></center>
<input type="text" class="text" id="test2" placeholder="Your City">
</div><!-- End Box -->
請幫忙 !
TNX
似乎您沒有將過濾器應用於請求的json文件。 您正在獲取整個文件。 我目前假設您提到的json文件是一個純json文件(意味着,它沒有創建它的服務器端代碼)。
您可以做兩件事:a)修改$.map
return函數,以便刪除所有不滿足過濾條件的值(即,您可以刪除不包含給定文本一部分的城市)。 為了找到符合您條件的值,可以使用this這樣簡單的方法。
或b)您可以使用某些服務器語言(例如PHP,Java,C#等)創建JSOn服務器端,然后在此處讀取您在$.ajax
處傳遞data
的terms
參數,並通過執行過濾服務器端。 然后,您只需要返回實際符合條件的值即可。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.