1

ui-selectで複数の項目を選択しています。選択した項目の 1 つをクリックすると、モーダル ウィンドウが開きます。ui-select-match 要素の ng-click の関数として実装しました。

<ui-select id="myselect" ng-model="myvar" theme="bootstrap" ng-required="true" multiple="" search-enabled="true" reset-search-input="true">
    <ui-select-match ng-click="myFunction()" placeholder="Click to select">{{$item}}
    </ui-select-match>
    <ui-select-choices repeat="item in ['one', 'two', 'three']">
      <div>{{item}}</div>
    </ui-select-choices>
  </ui-select>

私のjsは次のようになります:

$scope.myFunction = function() {
  $uibModal.open({
   template: "Hi there!" 
  });
}

クリックするとモーダル ウィンドウが開きますが、問題がありxます。アイコンをクリックしてアイテムを削除すると、モーダル ウィンドウが開きます。どうすればこの動作を防ぐことができますか?

Plunkr はこちら: http://plnkr.co/edit/i4urNAa1u1rteXhfvAyd?p=preview

4

1 に答える 1

1

ui-select-match 内で ng-click を移動してみてください:

  <ui-select-match placeholder="Click to select">
    <a ng-click="myFunction()" > {{$item}} </a>
  </ui-select-match>
于 2016-06-13T17:45:12.943 に答える