0

我是新的ng。我想創建一個自動完成文本框,在更改文本時觸發AJAX調用。但是,至AJAX調用的最小長度將爲3個字符,並且當用戶輸入第4,5或6個字符時,它不會再次執行AJAX調用,但它只會根據以前的數據進行排序。 所以基本上,它只會在前3個字符發生變化時(以及最少3個字符)纔會進行AJAX調用。AngularJS自動完成

在此先感謝

+1

我認爲uib-typeahead是一個不錯的選擇。如果您可以使用UI-Bootstrap,請檢查此https://angular-ui.github.io/bootstrap/#!#typeahead –

回答

0

排序冗長的解釋,因此寫作答案。

至少爲3個字母的功能:

$scope.checkTitle = function(lettersTyped){ 
    if(lettersTyped.length > 2){ 
      //make API call here 
      $scope.limitTitleSearch = 500; 
    }else{ 
      $scope.limitTitleSearch = 0; 
    } 
} 

HTML5有一個名爲<datalist>現有元素與一個選擇文本框沿有助於自動完成。但它在Chrome中效果不佳。它會執行matches而不是contains,因此您無法在「Hi!Hello there」中搜索「Hello」並在Chrome上收到正面回覆。適用於FF!

因此,我推薦使用angular-uiui-select。 樣品Plnkr由mkearl。希望這可以幫助!。