web-dev-qa-db-ja.com

Angularjs UI-Selectドロップダウンオンセレクト関数呼び出しの問題

私のAngularJSプロジェクトでは、通常の選択ドロップダウンを使用し、ng-changeを使用して関数呼び出しを行っていますが、これは完全に正常に機能しています。次に、同じドロップダウンをui-selectに移行します。しかし、選択時の関数呼び出しは機能しません。さまざまな方法を試しましたが、うまくいきませんでした。私の plnkr を見つけてください

以下は、ui-selectで試した2つの方法です。

<ui-select ng-model="uiSelectedCustomer" theme="select2" on-select="getDataBasedonCustomer(uiSelectedCustomer)" style="min-width: 300px;">
    <ui-select-match placeholder="Select a customer..">{{$select.selected.name}}</ui-select-match>
    <ui-select-choices repeat="cust in customers | filter: $select.search">
        <div ng-bind-html="cust.name | highlight: $select.search"></div>
    </ui-select-choices>
</ui-select>


<ui-select ng-model="uiSelectedCustomer" theme="select2" on-select="getDataBasedonCustomer(uiSelectedCustomer)" style="min-width: 300px;">
    <match placeholder="Select a customer in the list or search his name ">{{$select.selected.name}}</match>
    <choices repeat="cust in customers | filter: $select.search">
        <div ng-bind-html="cust.name | highlight: $select.search"></div>
    </choices>
</ui-select>
19
Madasu K

あなたのコードから何が理解されていますか?アイテムが選択されている場合、選択に基づいて何かをしたいですか?それからこれを見て

on-select="onSelected($item)"ui-selectとコントローラーに追加します。

$scope.onSelected = function (selectedItem) {
  //do selectedItem.PropertyName like selectedItem.Name or selectedItem.Key 
  //whatever property your list has.
}
54
Sunil Vurity