2017-09-27 160 views
2

我對如何從Angular 4中的選擇選項獲取值有點困惑。我希望它在component.ts文件中分配一個新變量。我試過這個,但是什麼都沒輸出。我相信這是一個非常簡單的問題,但我無法得到它。希望你們能幫忙。你可以用[(ngModel)]來做到嗎?謝謝。從角度4中的選擇選項獲取價值

component.html

<form class="form-inline" (ngSubmit)="HelloCorp(f)" #f="ngForm"> 
    <div class="select"> 
     <select class="form-control col-lg-8" #corporation required> 
      <option *ngFor="let corporation of corporations" [value]="corporationObj">{{corporation.corp_name}}</option>  
     </select> 
      <button type="submit" class="btn btn-primary manage">Submit</button> 
    </div> 
</form> 

component.ts

HelloCorp() { 
const corporationObj = corporation.value; 

}

回答

1

你只需要把[(ngModel)]您選擇eleme NT:

<select class="form-control col-lg-8" #corporation required [(ngModel)]="selectedValue"> 
+0

你怎麼可以指定在component.ts價值? – Joseph

3

是的,你可以使用ngModel這樣的:

<form class="form-inline" (ngSubmit)="HelloCorp()"> 
    <div class="select"> 
     <select [(ngModel)]="corporationObj" class="form-control col-lg-8" #corporation required> 
      <option *ngFor="let corporation of corporations"></option>  
     </select> 
     <button type="submit" class="btn btn-primary manage">Submit</button> 
    </div> 
</form> 

HelloCorp() { 
    console.log("My input: ", corporationObj); 
} 

作爲一般:

你的HTML:

<form> 
     <select [(ngModel)]="chosenOption" name="first"> 
     <option *ngFor="let o of options"> 
      {{o.name}} 
     </option> 
     </select> 
     <button (click)="print()">Click me</button> 
    </form> 

打字稿文件:

options = [ 
    {name: "option1", value:1}, 
    {name: "option2", value:2} 
    ] 
    chosenOption: string; 
    print() { 
     console.log("My input: ", chosenOption); 
    } 

還要確保您導入:

import { FormsModule } from '@angular/forms'; 
+0

這是嗎?否(ngSubmit)了? – Joseph

+0

是的,這是它。您可以使用ngSubmit觸發事件,例如:'console.log(corporationObj)',並查看您選擇的輸入,但corporationObj變量會立即更改,不需要提交。 – mahval

+0

你能看到我的代碼嗎?我忘了寫這個{{corporation.corp_name}}。這是選項值。你的尚未定義? – Joseph