2013-07-24 16 views
5

Chciałbym zapytać, w jaki sposób mogę dodać dodatkowe parametry dla wywołania AJAX wykonanego przez opcję remote. Mam następujący prosty formularz, aby szukać kwalifikacji (jest w coffeescript):Dodaj dodatkowe dane dla wywołania ajaxa z zdalnej opcji typeahead.js

$('#search_qualification').typeahead 
    name: 'qualification' 
    limit: 50 
    remote: 
    url: "/search/qualification?term=%QUERY" 

Chciałbym wysłać kolejną param z wywołania AJAX, że jest state, zwykle z jQuery AJAX rozmowy, zrobiłbym to :

$.ajax 
    url: "/search/qualification" 
    dataType: "json" 
    data: 
    term: request.term 
    state: $("#state").val() 

Jestem całkowicie nieświadomy w dostosowaniu tego dla typeahead.js, czy ktoś może mi pomóc tutaj? Dziękujemy

Odpowiedz

17

Użyj opcji replace:

$('#search_qualification').typeahead({ 
    name: 'qualification' 
    limit: 50 
    remote: { 
    url: '/search/qualification?term=%QUERY&state=%STATE' 
    replace: function(url, query) { 
     var state = encodeURIComponent($('#state').val()); 

     return url.replace('%QUERY', query).replace('%STATE', state); 
    } 
    } 
}); 
+0

Wszelkie spadkowy w nie za pomocą 'replace' i po prostu zmieniając' url' aby wstawić dodatkowego parametru np '/ search/qualification? term =% QUERY & state = '+ encodeURIComponent ($ (' # state '). val());' – Medorator

Powiązane problemy