HTML
<div class="noteCheckBox">
<input type="checkbox" id="noteCheckBox" [checked]="checkbox" (change)="stateCheckBox()">
<label for="noteCheckBox" class="noteLabel">AnyText</label>
</div>
打字稿
import { Component } from '@angular/core';
import { CookieService } from '../../services/cookie/cookie.service';
@Component({
selector: 'pagCheckBox',
templateUrl: './app/html/pagCheckBox.component.html',
styleUrls: ['app/css/pagCheckBox.component.css']
})
export class PagCheckBox {
constructor(private cookieService: CookieService) {}
ngOnInit() {
this.checkbox = this.cookieService.getCookie('checkbox');
}
stateCheckBox(event) {
let state = $("#noteCheckBox").prop("checked"); //true or false
this.checkbox = this.cookieService.setCookie('checkbox', state);
}
}
我有一个CookieService
,其中包含有关状态复选框(true
或false
)的信息(来自Cookie浏览器)。
如果(checkbox == true)
则需要在Html中添加at checked
以删除。
我尝试将[checked]="checkbox"
和复选框动态更改(true
或false
)和attr关闭或打开,但效果不佳。
答案 0 :(得分:3)
[attr.fooAttr]
null
false
将添加值为"false"
的属性,但在null
时不会删除该属性。 DOM。[attr.checked]="checkbox ? true : null"