2017-09-18 53 views
0

我正在嘗試獲取輸入字段和下拉列表的值。但我得到的錯誤無法讀取null的屬性。獲取輸入字段和下拉角度的值2

languageSelected(name: ElementRef, languageSelect: ElementRef) { 
    alert(languageSelect.nativeElement.value); 
} 

該視圖位於下方。

<div class="form-group row"> 
    <label class="col-md-3 form-control-label" for="name">{{'movieCategory.name'|translate}}</label> 
    <div class="col-md-5"> 
     <input #categoryNameInput [disabled]="pageStatus==4" ngModel="{{movieCategory.name}}" name="name" id="name" type="text" class="form-control" placeholder="{{'movieCategory.placeHolder.name'|translate}}"> 
    </div> 
    <div class="col-md-3"> 
     <select #languageSelection class="form-control"> 
     <option value="tr">Türkçe</option> 
     <option value="en">İngilizce</option> 
     <option value="de">Almanca</option> 
     </select> 
    </div> 
    <div class="col-md-1"> 
     <i (click)="languageSelected(categoryNameInput,languageSelection)" class="fa fa-plus fa-2x" style="margin-top:5px;margin-left:-15px;color:green" aria-hidden="true"></i> 
    </div> 
</div> 

順便說一句,當我嘗試alert(languageSelect),而不是警告[對象HTMLSelectElement]這是我認爲沒關係。

回答

1

您需要將.value添加到console.log值,因爲deafult會將它傳遞到整個html標記中,因爲您需要該值。

languageSelected(categoryNameInput,languageSelection){ 
    console.log(categoryNameInput.value); 
    console.log(languageSelection.value); 
} 
+0

感謝您的快速回答。如果我還想訪問選擇的名稱,該怎麼辦?當選擇「en」時,可以說「İngilizce」? – rematnarab

+0

@rematnarab它更好地使用相同的[反應形式]角度形式(https://rahulrsingh09.github.io/AngularConcepts/reactive)和[模板驅動](https://rahulrsingh09.github.io/AngularConcepts/template )。你也可以檢查這個[ans](https://stackoverflow.com/a/39409050/2708210) –