簡體   English   中英

Angular Bootstrap Typeahead下拉菜單

[英]Angular Bootstrap Typeahead dropdown

我有一個Angular ui-boostrap typeahead組件,該組件可以正常工作,直到我向整個函數添加了一項要求。 我想在用戶鍵入3個字母后立即為建議的結果調用后端。 正確完成了,但是我的問題是,只有當用戶鍵入第4個字母時,結果才可見。 有什么方法可以繞過此操作,方法是在用戶鍵入第三個字母后強制其刷新UI。 代碼是:

HTLM 
<input name="states" id="states" type="text" ng-model="vm.cityName"
uib-typeahead="municipality as  municipality.city + ' (' + municipality.name + ') '+municipality.zipCode for municipality in vm.getMunicipalitiesByCity($viewValue) | filter:$viewValue | limitTo:8" class="form-control" typeahead-on-select="vm.citySelected()" >

JS Controller
vm.getMunicipalitiesByCity = function (cityName) {
            if (cityName != undefined && cityName.length == 3) {
                CalculationEndpointService.municipalitiesByCity({cityName: cityName}, function (result) {
                    vm.municipalities = result.map(
                        function (item) {
                            return item;
                        }
                    );
                });
            }
            if(cityName.length<3){
                vm.municipalities=[""];
            }
            return vm.municipalities;
        };

您可以使用typeahead-min-length屬性。 參見https://angular-ui.github.io/bootstrap/#/typeahead

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM