- Not working :
-
[disabled] = true
,
-
[disabled] = "isDisabled"
-----ts > (isDisabled=true)
- 基本的 html 禁用器也不起作用 ----html >
disable
-
[attr.disabled] = true
,
-
[attr.disabled] = "isDisabled"
-----ts > (isDisabled=true
)
我正在尝试为预览和更新制作相同的表单(预览应该禁用输入),但我在 html 中的输入无法绑定到打字稿布尔值。
在 html 中,我有一个表,其中包含 person.name、person.surname .... 按钮(预览)、按钮(更新)均触发 onSelect 函数并发送 person + true/false。
<input [(ngModel)]="osoba.ime" [attr.disabled]="isDisabled" name = "ime" type="text" id="ime">
和打字稿功能和属性
isDisabled = true;
onSelect(o: Osoba, isView) {
this.isDisabled = isView;
console.log(document.getElementById('ime'));
console.log(this.isDisabled);
this.selectedOsoba = o;
}
this.isDisabled 的日志有效
但元素的日志甚至没有禁用属性
<input _ngcontent-c5="" id="ime" name="ime" type="text" ng-reflect-name="ime" ng-reflect-model="Dusan " class="ng-untouched ng-pristine ng-valid">
这是整个html代码
<form *ngIf="osoba">
<div class="input">
<label>Ime Osobe</label>
<input [disabled]= "isDisabled" [(ngModel)]="osoba.ime" name = "ime" type="text" id="ime">
</div>
<div class = "input">
<label >Prezime Osobe</label>
<input [(ngModel)]="osoba.prezime" name = "prezime" type="text" id = "prezime" [disabled] = "isDisabled">
</div>
<div >
<label >Jmbg Osobe </label>
<input [(ngModel)]="osoba.jmbg" name = "jmbg" type="text" [attr.disabled]= true >
</div>
<div class="input">
<input type="submit" value="izmeni" (click)="updateOsoba()">
</div>
</form>
<input id="disabledTest" type="text" value="nekiTekst" [disabled]= true>
表单之外的输入有效,但表单和 div 中的所有输入均无效
有什么问题吗?
使用时attr.disabled
,您必须提供文字值,或者完全省略该属性。请记住,HTML 中的禁用属性仅通过存在即可禁用支持该属性的元素。
<input [(ngModel)]="osoba.ime" [attr.disabled]="disabled?'':null" name="ime" type="text" id="ime">
HTML 中的以下两种情况都会导致输入被禁用...
<input disabled />
<input disabled="disabled" />
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)