2017-10-10 156 views
0
<div class="row"> 
    <div class="text" id="radioButtonWrapper" style="display:inline-block;">Gender</div> 
    <div class="data"> 
    <div id="genderSection" style="display:inline-block;"> 
     <radiobutton [(model)]="gender" name="gender" value="Female" (modelChange)="reciveRadioButtonVal($event, IdasParameter)" required>Female</radiobutton> 
     <radiobutton [(model)]="gender" name="gender" value="Male" (modelChange)="reciveRadioButtonVal($event, IdasParameter)" required>Male</radiobutton> 
    </div> 
    </div> 
</div> 

有可能傳遞一些ID的函數。在這個例子中,我想在函數reciveRadioButtonVal($event, IdasParameter) 中傳遞id =「radioButtonWrapper」,其中IdasParameter =>「radioButtonWrapper」 我不想使用並將其作爲字符串傳遞reciveRadioButtonVal($event,radioButtonWrapper)傳遞id作爲函數的參數

+0

爲什麼你不能簡單地使用'#radioButtonWrapper'屬性添加一個引用,並通過它? –

+0

不是型號,但ngModel – omeralper

回答

2

創建一個參考,而不是身份證。也就是說​​並通過radioButtonWrapper的功能(而不是作爲一個字符串。作爲一個變量)

<div class="row"> 
    <div class="text" #radioButtonWrapper style="display:inline-block;">Gender</div> 
    <div class="data"> 
    <div id="genderSection" style="display:inline-block;"> 
     <radiobutton [(model)]="gender" name="gender" value="Female" (modelChange)="reciveRadioButtonVal($event, radioButtonWrapper)" required>Female</radiobutton> 
     <radiobutton [(model)]="gender" name="gender" value="Male" (modelChange)="reciveRadioButtonVal($event, radioButtonWrapper)" required>Male</radiobutton> 
    </div> 
    </div> 
</div> 
2

你可以用角的元素選擇通過它,你的單選按鈕

<div class="row"> 
    <div class="text" id="radioButtonWrapper" #radioButtonWrapper style="display:inline-block;">Gender</div> 
    <div class="data"> 
    <div id="genderSection" style="display:inline-block;"> 
     <radiobutton [(model)]="gender" name="gender" value="Female" (modelChange)="reciveRadioButtonVal($event,radioButtonWrapper)" required>Female</radiobutton> 
     <radiobutton [(model)]="gender" name="gender" value="Male" (modelChange)="reciveRadioButtonVal($event,radioButtonWrapper)" required>Male</radiobutton> 
    </div> 
    </div> 
</div> 

將傳遞給你的函數作爲角元素,以便在你的函數,你應該得到它像這樣設置屬性..

reciveRadioButtonVal(event, radiobutton){ 
    console.log(radiobutton.nativeElement);// this is the radio button 
    console.log(radiobutton.nativeElement.id);// this is the id 
} 

一旦你有,你可以訪問其所有屬性的元素..

+0

當我使用console.log(單選按鈕)顯示

gender
。如何獲得id這個元素? –

+0

已更新顯示ID的答案。 –

+0

console.log(radiobutton.nativeElement)return undefined –