Angular4- on change选择框返回错误的值

Raj*_*r D 5 angular

我想为新的选择做点什么,但是我在onChange()中得到的东西总是最后选择.如何在没有前缀和连字符的情况下获得正确的值?

继续教育,form.component.html

<select class="form-control custom-select" name="course_id" id="course_id" formControlName="course_id" (change)="onChange($event.target.value)">
    <option value="">--Select--</option>
    <option *ngFor="let course of course_list" [ngValue]="course.id">{{ course.name }}({{course.id}})</option>
</select>
Run Code Online (Sandbox Code Playgroud)

继续教育,form.component.ts

onChange(value) : void {
   console.log('Course Value',value)
}
Run Code Online (Sandbox Code Playgroud)

例如:我得到的值为2:8.预期值为8

dev*_*033 9

您只需[ngValue]在要绑定对象时使用.

所以,value.id是一个原始值,使用[value],而不是[ngValue]:

<option *ngFor="let course of course_list" [value]="course.id">{{ course.name }}({{course.id}})</option>
Run Code Online (Sandbox Code Playgroud)

  • 当然!@ developer033 (3认同)
  • 您可以检查它作为答案吗?:) (2认同)