2016-09-14 4 views
0

Ich habe eine Liste von Restaurants von * ngFor gemacht. Ich kann auf den, den ich ändern möchte, klicken, der es zu einem Eingabefeld mit dem Etikettentext macht.Typescript: Wert von Eingang aktualisieren

Was ich tun möchte ist, den Textwert des Eingabefeldes zu erhalten und den Label-Wert damit zu aktualisieren, wenn ich auf eine Schaltfläche klicke.

Sie werden verstehen, besser mit dem Code:

<div class="row" *ngFor="let restaurant of event.restaurants; let index = index"> 
      <div class="col-xs-5" (click)="update=true" off-click="update=false"> 
       <input *ngIf="update" type="text" name="champ" value="{{restaurant.name}}" placeholder="{{restaurant.name}}"/> 
       <a *ngIf="!update">{{restaurant.name}}</a> 
      </div> 
      <div class="col-xs-5"> 
       {{restaurant.category.description}} 
      </div> 
      <div class="col-xs-2"> 
       <button class="btn btn-default" *ngIf="!update" (click)="DelRestaurant(index)">{{'EVENT_RESTAURANT_REMOVE' | translate}}</button> 
       <button class="btn btn-default" *ngIf="update" (click)="UpdateRestaurant(index)">Modifier</button> 
      </div> 
</div> 

Mit UpdateRestaurant(index), möchte ich den Eingangswert erhalten und {{restaurant.name}}

ändern, wenn Sie mir helfen könnte, das wäre genial :)

Antwort

0

Mit UpdateRestaurant (Index), möchte ich den Eingangswert und ändern {{restaurant.name}}

Ich bin nicht 100% sicher mit Angular2, aber mit Angular für wiederholte Einträge könnten Sie das Objekt mit dem Abschnitt übergeben.

Was bedeutet, dass Sie das Restaurant Objekt passieren kann ..

(click)="UpdateRestaurant(restaurant)" 

Mit dem Objekt geladen, um die „name“ auf dem Objekt zu ändern wird die Ansicht ändern.