2
我使用Twitter的引導的預輸入通過JavaScript提供使用此代碼片段方正場館預輸入:限制Ajax的請求到Foursquare的suggestcompletion
function addLocationTypeaheadHandler() {
$('input#location').keyup(function() {callFoursquareForTypeahead()});
}
function callFoursquareForTypeahead() {
var inputQuery = $('input#location').val();
if (inputQuery.length == 3) {
$('input#location').typeahead({
source: function(query, process) {
var urlString = "https://api.foursquare.com/v2/venues/suggestcompletion?ll=" + $('#latitude-field').val() + "," + $('#longitude-field').val() +
"&radius=1000&client_id=" + clientid + "&client_secret=" + clientsec;
return $.get(urlString, {query: $('input#location').val()},
function(json) {
venueNames = [];
$.each(json.response.minivenues, function(index,value) {
venueNames.push(value.name);
});
return process(venueNames);
}
);
}
});
}
}
目前,它的工作原理,但在我的網絡請求,我可以看到每當我更改查詢時,有一個新的XHR請求foursquare。我試圖用inputQuery length條件使用(不那麼優雅)的keyup事件來最小化它們,但它仍然被調用。
我想知道是否有有辦法,以儘量減少這些請求