2016-10-03 109 views
2

大家好,我有以下問題。jquery文本字段自動完成

我必須爲自己做出瞭如下自動完成,當用戶進入invalid city文本框"no match found""no city found"

這裏是我的Jquery下表現出我想要的。

(附註)我需要它沒有任何自動完成插件等,

$('.form-control').keyup(function(e){ 
    e.preventDefault(); 
    $.ajax({ 
     method: "GET", 
     url: "https://api.teleport.org/api/cities?search=" + $('.form-control').val(), 

}) .done(function(data){ 
     if(typeof data._embedded["city:search-results"][0] === 'undefined') { 
      $('#datalist').append('Please select a valid value.'); 
     } else { 
    console.log(data._embedded["city:search-results"][0].matching_full_name); 
    $('option:eq(0)').remove(); 
    $('#datalist').append('<option value="' + data._embedded["city:search-results"][0].matching_full_name + '">'); 
} 

}); 
}); 

回答

2

工作,這是你想達到什麼樣的?

$('.form-control').keyup (function (e) { 
    e.preventDefault(); 
    $.ajax ({ 
     method: "GET", 
     url: "https://api.teleport.org/api/cities?search=" + $('.form-control').val(), 

    }) 
    .done (function(data){ 

     if(typeof data._embedded["city:search-results"][0] === 'undefined') { 
      $('#datalist').html (''); 
      $('#datalist').html ('No Match Found'); 
     } 
     else { 
      console.log (data._embedded["city:search-results"][0].matching_full_name); 
      $('#datalist').html (''); 
      $('option:eq(0)').remove(); 
      $('#datalist').html ('<option value="' + data._embedded["city:search-results"][0].matching_full_name + '">' + data._embedded["city:search-results"][0].matching_full_name + '</option>'); 
     } 

    }); 
}); 
+0

是,但我需要的不匹配的消息,發現無法點擊 – Stiliyan

+0

我不知道爲什麼它會是:/你有一個工作的例子嗎?我昨天搞亂了這個https://jsfiddle.net/0hex0Lj2/ –