我需要在选择选项中添加自定义数据属性。我希望这样做是因为在更改时,我想基于所选属性(而不是值)触发操作。
以下是我正在使用的代码:
<select (domChange)="onListUpdate($event)" formControlName="region" id="region" class="selectric form-control">
<option code="" value="-1">{{ 'select_country' | translate }}</option>
<option data-isocode="{{region.iso_code}}" value="{{region.id}}" *ngFor="let region of regions">{{region.name['en']}}</option>
</select>
当我给data属性一个静态值时,它可以正常工作。例如,以下代码没有任何问题(请注意,data-isocode有一个静态值)。
<option data-isocode="abc" value="{{region.id}}" *ngFor="let region of regions">{{region.name['en']}}</option>
然而,当我尝试在data-isocode中使用该变量时。
<option data-isocode="{{region.iso_code}}" value="{{region.id}}" *ngFor="let region of regions">{{region.name['en']}}</option>
它向我抛出以下错误。
Can't bind to 'isocode' since it isn't a known property of 'option'
如何在Angular中使用FormBuilder传递数据属性(例如jQuery)并获取值?
[attr.data-isocode]="region.iso_code"
。 - Rajshri Mohan K S[attr.data-isocode]="region.iso_code"
。 - CruelEngine