2013-11-20 4 views
0

Я использую:Автозаполнение JQuery UI с проблемами URL-адреса запроса Zend Framework?

$("#search").autocomplete({ 
     source: "http://ztest.local/ajax/ac" 
    }); 

Таким образом, если пользователь вводит в поле поиска, запрос отправляется на сервер ... проблема я хотел бы формат, чтобы быть в форме:

http://ztest.local/ajax/ac/term/foo 

Однако запрос дается как:

http://ztest.local/ajax/ac?term=foo 

Я попытался:

source: 'http://ztest.local/ajax/ac/term/' + encodeURIComponent($('#search').val() 

однако, что даже не сделать запрос ...

Не знаю, как двигаться вперед, somewhat related question

ответ

1

Я использовал JQuery-подсказки с Zend для проекта пары месяцев назад. Вот как я написал источник, надеюсь, что это поможет.

$("#unit_autocomplete").autocomplete({ 
     source: function(request, response) {  
      $.ajax({ 
       url: 'http://localhost/becasPropias/public/unit/autocomplete/format/json'+ 
        '/type/'+type+'/term/'+request.term, 
       dataType: "json", 
       success: function(data) { 
        $("#unit_autocomplete").removeClass('ui-autocomplete-loading'); 
       }, 
       error: function(jqXHR, textStatus, errorThrown){ 
        $("#unit_autocomplete").removeClass('ui-autocomplete-loading'); 
       } 
      }); 
     }, 
     minLength:2, 
     select: function(event, selectedItem) { 
      toggle('hidden_unit', selectedItem['item']); 
     }, 
     open: function() { 
      $(this).removeClass("ui-corner-all").addClass("ui-corner-top"); 
     }, 
     close: function() { 
      $(this).removeClass("ui-corner-top").addClass("ui-corner-all"); 
     } 
    }); 

Из всего этого кода, вот та часть, которая вас интересует:

source: function(request, response) {  
      $.ajax({ 
       url: 'http://localhost/becasPropias/public/unit/autocomplete/format/json'+ 
        '/type/'+type+'/term/'+request.term, 
       dataType: "json", 
       success: function(data) { 
        $("#unit_autocomplete").removeClass('ui-autocomplete-loading'); 
       }, 
       error: function(jqXHR, textStatus, errorThrown){ 
        $("#unit_autocomplete").removeClass('ui-autocomplete-loading'); 
       } 
      }); 
     } 

И из этого кода

url: 'http://localhost/becasPropias/public/unit/autocomplete/format/json'+ 
        '/type/'+type+'/term/'+request.term, 

Как вы видите, вы можете поместить в URL как вам нужно. Код для этого доступен в моем git account.

Смежные вопросы