でui-select
、オプションを選択すると、on-select
コールバックは起動しますが、オプションは毎回クリアされません。
ui-select には 2 つの状態があります。
- ボタン - 実際にクリックしていない場合
- 入力 - クリックすると検索できます
起動すると、ボタンにプレースホルダー テキスト「検索...」が表示されます。それをクリックして検索を開始すると、リストが表示されます。1 つのオプションを選択すると起動しon-select
、ng-model
.
それでも、私が選択するたびng-model
に、コールバックのクリアが無視されます。
<ui-select ng-model="result.selected" theme="bootstrap" class="search" on-select="searchselect($item)" reset-search-input="true" on-select="selected($item)">
<ui-select-match placeholder="Search...">{{$select.selected.name}}</ui-select-match>
<ui-select-choices refresh="search({val:$select.search})" refresh-delay="300" repeat="item in results">
<div ng-bind="item.name"></div>
</ui-select-choices>
</ui-select>
これが私のon-select
コードです:
$scope.selected = function(item) {
$scope.picked = item;
$scope.result.selected = "";
};
基本的なui-select
例の plunkr を複製して修正しました: http://plnkr.co/edit/16DRYH8MbPJOy0GpogZz?p=preview
- 選択をクリックします
- テキストを検索すると、「123」が最も簡単だと思います
- 選択肢一つを選択してください
ng-model
がクリアされていることを確認します- 再検索
- 別のオプションを選択するか、同じオプションを選択してください
ng-model
がクリアされていないことを確認します
ここに画像があります。
イニシャル:
検索中:
選択後(2つおき)-これは私の問題です
2回目の選択ごとにボタンの最後の画像でクリアされないのはなぜですか?