2012-01-14 3 views
5

Я новичок в этом и просмотрел другие примеры, но неясно, как установить сообщения «Нет совпадений» для последней версии автозаполнения http://docs.jquery.com/UI/Autocomplete, когда результатов не будет.Сообщение «Нет совпадений» для jquery ui autocomplete

Это код, который я использую, может кто-то помочь написать все остальное, в идеале, чтобы он был доступен для перехода на страницу «предложений».

<script> 
    $(document).ready(function() { 
     var data = [ 
      {label: 'Yahoo', value: 'http://yahoo.com'}, 
      {label: 'BMW', value: 'http://bmw.com'}, 
      {label: 'Bing', value: 'http://bing.com'} 
     ]; 
      $("input#autocomplete").autocomplete({ 
       source: function(request, response) { 
       var results = $.ui.autocomplete.filter(data, request.term); 
       response(results.slice(0, 10))},    
      focus: function (event, ui) { 
       $(event.target).val(ui.item.label); 
       return false; 
      }, 
      select: function (event, ui) { 
       $(event.target).val(ui.item.label); 
       window.location = ui.item.value; 
       return false; 
      } 
     }); 
    }); 
    </script> 

Заранее спасибо.

UPDATE: Удалось исправить ошибку, но как я могу вставить рабочую ссылку в сообщение?

<script type='text/javascript'>//<![CDATA[ 
$(window).load(function(){ 
     var data = [ 
       {label: 'Yahoo', value: 'http://yahoo.com'}, 
       {label: 'BMW', value: 'http://bmw.com'}, 
       {label: 'Bing', value: 'http://bing.com'} 
     ]; 
       $("input#autocomplete").autocomplete({ 
       source: function(request, response) { 
       var results = $.ui.autocomplete.filter(data, request.term); 
       if (!results.length) { 
          $("#no-results").text("<a href=\"/\">No results found!</a>"); 
         } else { 
          $("#no-results").empty(); 
         }   
       response(results.slice(0, 10)); 
       },   
      focus: function (event, ui) { 
       $(event.target).val(ui.item.label); 
       return false; 
      }, 
      select: function (event, ui) { 
       $(event.target).val(ui.item.label); 
       window.location = ui.item.value; 
       return false; 
      }    
       }); 
    }); 
//]]> 
    </script> 
+1

Возможный дубликат [Обнаружение результатов на jQuery UI autocomplete] (http://stackoverflow.com/questions/4718968/detecting-no-results-on-jqueryu-ui-autocomplete) –

ответ

1

Вместо использования $("#no-results").text("<a href=\"/\">No results found!</a>") попробовать $("#no-results").html('<a href="">No results found!</a>'). Хотя почему вы хотите, чтобы привязывающий тег без ссылки меня смутил.

+0

Спасибо за вашу помощь, это сработало удовольствие. – aphextwig