2017-09-29 33 views
0

は、私は2つのMD-選択を持っている:私が最初にMD-選択し、選択した値に設定されている場合にのみ第二MD-選択表示することができますどのように表示MD-選択他のMD-選択した場合 - 選択した値= concrete_value

<form (ngSubmit)="someAction(f)" #f="ngForm"> 
    <md-select 
     #selectedHolidayType 
     placeholder="Holiday type" 
     name="holiday_type" 
     [(ngModel)]="holiday_type" 
    > 
    <md-option *ngFor="let type of types" [value]="type.typeId">{{ type.typeName}}</md-option> 
    </md-select> 

<md-select 
    *ngIf="selectedHolidayType === 19" 
    placeholder="Some placeholder" 
    name="option" 
    [ngModel]="option" 
> 
     <md-option *ngFor="option of options" [value]="option.id">{{option.value}}</md-option> 

</md-select> 
</form> 

この場合、私が望むもの - 19.

多分、htmlテンプレートで最初のmd-selectの値を選択できますか?

私はすでに試した:

*ngIf="holiday_type === 19" 
*ngIf="selectedHolidayType.selected === 19" 
*ngIf="selectedHolidayType.selected.value === 19" 
をしかし、それはどれも機能しません。

ありがとうございました!

<md-select 
     #selectedHolidayType 
     placeholder="Holiday type" 
     name="holiday_type" 
     [(ngModel)]="holiday_type" 
    > 
    <md-option *ngFor="let type of types" [value]="type.typeId">{{ type.typeName}} 
    </md-option> 
</md-select> 

<div *ngIf="holiday_type > 0"> 

    <md-select 
    *ngIf="holiday_type == 19" 
    placeholder="Some placeholder" 
    name="option" 
    [ngModel]="option" 
    > 
     <md-option *ngFor="option of options" [value]="option.id">{{option.value}} 
    </md-option> 

    </md-select> 

</div> 

理由は考えてますが、私はそれが動作DIVにMD-選択をラップする場合:

答えて

0

[OK]を、私は答えを見つけていません!

誰かがその動作を説明することができれば、私は本当にapreciateだろう:)

0

あなたが*ngIf="holiday_type === 19"をしようとしたとき、それが機能しなかった理由を私は知りません。ここで

は次のように働いて、それの EXAMPLE

<form> 
    <md-select placeholder="Holiday type" 
     name="holiday_type" 
     [(ngModel)]="holiday_type"> 
    <md-option *ngFor="let type of types" [value]="type.typeId">{{ type.typeName }}</md-option> 
    </md-select> 

    <!-- Only show when 19 is selected --> 
    <md-select *ngIf="holiday_type === 19" 
     placeholder="Some placeholder" 
     name="option" 
     [(ngModel)]="option"> 
    <md-option *ngFor="let option of options" [value]="option.id">{{ option.value }}</md-option> 
    </md-select> 

</form> 
+0

男ですが、私はuがあなたの答えでやったようにそれが動作する必要があることを知っているが、それはしていません。私は掲示理由です/ノーアイデア、なぜ、この質問。 '* ngFor'の残りのAPIのデータでチェックしましたか? – esquarial

+0

いいえ、私はしませんでした。元の投稿にクラスコードを追加することはできますか?または、この答えの例をフォークして、状況をより明確に一致させますか? –

+0

いいえ、私は仕事の後にやります:) – esquarial

関連する問題