2017-09-21 110 views
0

這必須很簡單,但我不想使用jQuery。
我需要設置一個特定的單選按鈕控件。我有它的ID號,所以我嘗試:angular 4簡單地在javascript中設置一個單選按鈕

let radiobutton = document.getElementById("Standard"); 
radiobutton.checked = true; 

我在網上找到了例子,就像上面, 但打字稿/ JavaScript的給我的錯誤信息: 「屬性‘檢查’的類型不存在「 HTMLElement'「

任何想法?

感謝您的幫助。

+0

爲什麼不使用角度結合? –

+0

這不是在Angular2中做事的正確方法。但尋找https://www.w3schools.com/jsref/met_element_setattribute.asp –

+0

我可以使用一些幫助,如何在Angular中「做對」。雖然我一直在閱讀有關它,但我並不瞭解它的含義,它並沒有沉入其中。你能說更多嗎? –

回答

1

而不是做document.getElementById,使用@ViewChild和模板變量。 下面是一個例子:

HTML:

<input #checkbox1 type="checkbox" [checked]="true" (change)="onChange(1, checkbox1)"/>{{name1}} 
<br> 
<input #checkbox2 type="checkbox" (change)="onChange(2, checkbox2)"/>{{name2}} 

打字稿:

name1 = 'Angular 2'; 
    name2 = 'Angular 4'; 

    @ViewChild("input1") input1; 
    @ViewChild("input2") input2; 

    ngOnInit(){ 
    this.input1.checked = true; 
    console.log("Checkbox1 is checked - ", this.input1.checked); 
    console.log("Checkbox2 is checked - ", this.input2.checked); 

    } 

    onChange(checkbox, item){ 
    console.log("Checkbox%d was checked", checkbox); 
    console.log("Checkbox%d is checked - ",checkbox, item.checked); 

    } 

Stackblitz example

相關問題