在下拉菜单中将true / false设置为yes / no

时间:2018-08-14 21:49:05

标签: angular html5 typescript

我有以下代码:

   <div *ngSwitchCase="'Boolean'">
        <select *ngIf="attribute.IsWritable" [(ngModel)]="animal[attribute.AttributeKey]">
            <option (value)="animal[attribute.AttributeKey]==true">Yes</option>
            <option (value)="animal[attribute.AttributeKey]==false">No</option>
        </select>
        <span *ngIf="!attribute.IsWritable && attribute.IsReadable && animal[attribute.AttributeKey] ">Yes</span>
        <span *ngIf="!attribute.IsWritable && attribute.IsReadable && !animal[attribute.AttributeKey]">No</span>             
     </div>

我想根据animal [attribute.AttributeKey]返回的值为true或false更改下拉菜单,以显示yes或now。我该如何实现呢? 。任何帮助表示赞赏。另外,如何使返回的值保留为默认值?

2 个答案:

答案 0 :(得分:1)

您可能想尝试将绑定选项value作为输入:

<select *ngIf="attribute.IsWritable" [(ngModel)]="animal[attribute.AttributeKey]">
  <option [value]="true">Yes</option>
  <option [value]="false">No</option>
</select>

答案 1 :(得分:0)

这将无法正常工作,因为将'Sort' has not been declared中的select选项绑定将返回

  

字符串

value'true'

'false'

因此,在这种情况下,下一部分应如下所示:

<select *ngIf="attribute.IsWritable" [(ngModel)]="animal[attribute.AttributeKey]">
  <option [value]="true">Yes</option>
  <option [value]="false">No</option>
</select>