2017-02-08 6 views
3

角材 "md-chips"ディレクティブ選択項目の入力フィールドを制御する方法がチップコンテナではないのですか?角材 "md-chips"ディレクティブは、選択した入力フィールドをどのように制御するのですか?

チップテンプレート:

<md-chips name="limits" md-autocomplete-snap="" 
      ng-model="ctrl.selectedVegetables" 
      md-transform-chip="ctrl.transformChip($chip)" 
      md-require-match="ctrl.autocompleteDemoRequireMatch" 
      md-enable-chip-edit="true"    
      > 

    <md-autocomplete md-min-length="0" 
        md-selected-item="ctrl.selectedItem" md-search-text="ctrl.searchText" 
        md-items="item in ctrl.querySearch(ctrl.searchText)" md-item-text="item.name" 
        placeholder="Search for a vegetable" md-no-cache="true"> 
     <span md-highlight-text="ctrl.searchText">{{item.name}}</span> 
    </md-autocomplete>  

    <md-chip-template> 

    <label>{{$chip.name}}</label>  
    <input required type="number" ng-model="$chip.change" step="0.01"/> 
    <md-icon style="margin-top: -6px"> %</md-icon> 

    </md-chip-template> 
</md-chips> 

作業例があります: enter link description here

チップが選択されたときに入力フィールドがチップ収容それを自己集中ではなくされていることを確認する方法。数値の値を編集しようとすると、私の意味を理解することができます。

答えて

1

これがソリューションです:

1-私は​​になるこのIDを設定します一意であることが、あなたが集中したい入力のためのIDを追加します。

<input type="number" step="0.01" required ng-model="$chip.change" ng-attr-id="{{$chip.$$hashKey}}" style="padding-left: 3px; margin-left: 3px" />

2 - selectイベントハンドラでは、あなたが焦点に強制:

self.selectChip = (data) => { if(data) document.getElementById(data.$$hashKey).focus(); }

+0

をおかげで、それは動作します:) – Drasius

関連する問題