Angular 打字稿的复选框值
Angular Checkbox Value to Typescript
我正在尝试做一个有一张卡片和 4 个问题的测验。
我有 4 个这样的问题
<div class="col-md-6">
<div class="option" id="Answer1">
<label class="Answer1">
<input value= "Answer1"
type="checkbox"
(change) ="CheckAnswer(value)"/>{{question.answer1}}
</label>
</div>
<div class="option" id="Answer2">
<label class="Answer2">
<input value= Answer2
type="checkbox"
(change) ="CheckAnswer(value)"/>{{question.answer2}}
</label>
</div>
<div class="option" id="Answer3">
<label class="Answer3">
<input value= "Answer3"
name="Answer3"
type="checkbox"
(change) ="CheckAnswer(value)"/>{{question.answer3}}
</label>
</div>
<div class="option" id="Answer4">
<label class="Answer4">
<input value= "Answer4"
type="checkbox"
(change) ="CheckAnswer(value);"/>{{question.answer4}}
</label>
</div>
</div>
但现在我正在尝试使用方法 CheckAnswer(value) 将已按下的值赋予我的 TS 文件。
这是我在TS中测试是否给定值的方法。在我的控制台中,它一直说值未定义
CheckAnswer(value : string) {
console.log(value);
}
您未定义,因为 value
在 HTML 中的 CheckAnswer(value)
中未定义。
为您的所有输入尝试这个:
<input value= "Answer4"
type="checkbox"
(change)="CheckAnswer($event);"/>{{question.answer4}}
以及方法:
CheckAnswer(event : any) {
console.log(event); // should log something now
console.log(event.target.value); // should be the value of the checkbox
}
我正在尝试做一个有一张卡片和 4 个问题的测验。 我有 4 个这样的问题
<div class="col-md-6">
<div class="option" id="Answer1">
<label class="Answer1">
<input value= "Answer1"
type="checkbox"
(change) ="CheckAnswer(value)"/>{{question.answer1}}
</label>
</div>
<div class="option" id="Answer2">
<label class="Answer2">
<input value= Answer2
type="checkbox"
(change) ="CheckAnswer(value)"/>{{question.answer2}}
</label>
</div>
<div class="option" id="Answer3">
<label class="Answer3">
<input value= "Answer3"
name="Answer3"
type="checkbox"
(change) ="CheckAnswer(value)"/>{{question.answer3}}
</label>
</div>
<div class="option" id="Answer4">
<label class="Answer4">
<input value= "Answer4"
type="checkbox"
(change) ="CheckAnswer(value);"/>{{question.answer4}}
</label>
</div>
</div>
但现在我正在尝试使用方法 CheckAnswer(value) 将已按下的值赋予我的 TS 文件。 这是我在TS中测试是否给定值的方法。在我的控制台中,它一直说值未定义
CheckAnswer(value : string) {
console.log(value);
}
您未定义,因为 value
在 HTML 中的 CheckAnswer(value)
中未定义。
为您的所有输入尝试这个:
<input value= "Answer4"
type="checkbox"
(change)="CheckAnswer($event);"/>{{question.answer4}}
以及方法:
CheckAnswer(event : any) {
console.log(event); // should log something now
console.log(event.target.value); // should be the value of the checkbox
}