如何在Angularjs2中更改输入值时更新模型值

时间:2016-09-22 11:41:10

标签: angularjs angular

我想从输入标签更改模型值,但我不知道如何以最佳方式执行此操作。

这是我为此所做的代码。

<div *ngFor='let l of list'>
    <input #temp [value]='l.test' (blur)='l.test=temp.value'/>
    <span (click)='check(l,temp.value)'></span>
<div>

角度代码

check(l,temp:string)
{
   console.log(l.test);
   console.log(temp);
}

我想在没有模糊事件的情况下这样做。 请建议我做任何更好的方法。

1 个答案:

答案 0 :(得分:3)

在字段上使用can [(ngModel)],只要你输入一些可以改变数组中特定元素的l.test值的字段,就可以为字段提供双向绑定。

<强>标记

<div *ngFor='let l of list'>
    <input [(ngModel)]='l.test'/>
<div>

Angular 2 rc-5起,要使ngModel双向绑定正常工作,您可以在FormsModule

中导入@NgModule
import { FormsModule } from '@angular/forms';
///..other imports

@NgModule({
  imports:      [ BrowserModule, FormsModule ], //< added FormsModule here
  declarations: [ AppComponent ],
  bootstrap:    [ AppComponent ]
})

您可以参考this answer了解如何在Angular 2中使用双向绑定。

Plunkr here