4

剣道の複数選択の ngmodel に値を追加するためのボタンを 1 つ追加しようとしています。

<div ng-controller="MyCtrl">
  <select id='my' kendo-multi-select k-options="selectOptions" k-ng-model="selectedIds"></select>
  <p ng-show="selectedIds.length">Selected: {{ selectedIds }}</p>
  <button ng-click="addSelectedId()">Add selected id</button>
  <input ng-model="enteredId" />
</div>

コントローラーはこちら

  function MyCtrl($scope) {
      $scope.selectOptions = {
          placeholder: "Select products...",
          dataTextField: "ProductName",
          dataValueField: "ProductID",
          autoBind: false,
          dataSource: {
              type: "odata",
              serverFiltering: true,
              transport: {
                  read: {
                      url: "http://demos.telerik.com/kendo-ui/service/Northwind.svc/Products",
                  }
              }
          }
      };
      $scope.selectedIds = [ 4, 7];
       $scope.addSelectedId = function() {
          $scope.selectedIds.push(parseInt($scope.enteredId));
          console.log($scope.selectedIds);
       };
  }

プランカーはここにあります:

http://plnkr.co/edit/EH0EaMhFsV2JTdwpkqGg?p=preview

selectedIds に追加すると、ドロップダウン選択プレースホルダーには何も追加されません。何か案は?

4

1 に答える 1

3

HTML コードに k-rebind="selectedIds" を追加する必要があります

HTML:

<div ng-controller="MyCtrl">
  <select id='my' kendo-multi-select k-options="selectOptions" k-ng-model="selectedIds" k-rebind="selectedIds"></select>
  <p ng-show="selectedIds.length">Selected: {{ selectedIds }}</p>
  <button ng-click="addSelectedId()">Add selected id</button>
  <input ng-model="enteredId" />
</div>

この更新されたプランカーの例をご覧ください

于 2015-08-26T09:43:59.427 に答える