2016-07-22 81 views
0

當用戶選擇某個項目時,我正在使用AngularStrap typeahead並需要回調。根據documentation,還有一個選項onSelect,其可與一個function被供給,並且:AngularStrap typeahead,如何使用事件回調

如果提供,當一個項目被選中這個功能將被調用。

......還有......

選項可以通過數據屬性的指令或作爲對象的哈希配置的服務傳遞。對於數據屬性,將選項名稱附加到data-,如data-animation =「」中所示。

所以,我想如下使用它:

<input type="text" 
     class="form-control" 
     ng-model="selection" 
     bs-options="item for item in items" 
     bs-typeahead 
     data-on-select="onSelect"> 

並提供我的控制器內的onSelect()方法:

$scope.onSelect = function() { 
    console.log('this never gets called :('); 
}; 

然而,回調是永遠不會被調用。我在這裏錯過的任何東西?


[編輯] dfsq指出,它應該是bs-on-select,關於圖書館的資源。我只是嘗試過這個變體,但是這個事件只會被觸發一次。我創建了this Plunker來說明我的問題;在「選擇事件的數量」自然應該是一個選擇遞增,但它仍然是1

+0

你已經傳遞函數的名稱,而不是對該函數的調用....使用「onSelect」 – Vanojx1

+0

你有沒有嘗試過'選擇數據'onSelect''? –

+0

對不起,這是一個愚蠢的時候放在一起的例子。實際的例子在這方面是「正確的」,並且仍然沒有**工作。修復帖子。 – qqilihq

回答

1

看起來這是在評論由@Vanojx1回答,它應該是:

bs-on-select="onSelect" 

我已經用這個改變更新了Plunker並且它可以工作(但是,直到輸入失去焦點,它才調用該方法)。