我在应用中使用了mat-checkbox,但我不知道如何从复选框中接收字符串,而是布尔值。
在网站上阅读API Angular Material checkbox API 我可以找到可以将字符串关联到此复选框的“值”属性...但是如何将其绑定到变量?
我正在尝试类似的事情。
<mat-checkbox color="warn" value="Hello" [(ngModel)]="myString"> Hello </mat-checkbox>
但是我的变量正在获取布尔值...我该怎么办?
答案 0 :(得分:1)
绑定复选框的ngModel将始终返回其检查状态(true / false /不确定)。如果您想从复选框中获取document.getElementById("btn-birthdate")
属性,可以像这样向元素添加更改事件
docker-compose
以及您的组件ts
git clone
答案 1 :(得分:1)
后端中的所有复选框都收到“ Y”或“ N”,因此我必须这样做:
删除[(ngModel)]并为所有复选框创建一个函数
<mat-checkbox name="active" [checked]="model.active === 'Y'" (change)="checkboxChange($event);" > Click me </mat-checkbox>
component.ts
checkboxChange( event ){
let name = event.source.name;
this.model[name] = event.checked ? 'Y' : 'N';
}
答案 2 :(得分:0)
您可以使用name属性而不是ngModel来存储字符串值。
<mat-checkbox [(ngModel)]="isChecked"
name="{{checkboxStringValue}}">//make sure name is unique for every item
</mat-checkbox>