想要达到的目的:判断内容全为 空格时,禁止按钮使用。
全部输入空格提示另一种方法:
Ts:
pattern: any = { space: '(^1+$)' };
template:
<textarea [(ngModel)]="EvaluateInfo.content" (input)="getValue()" [pattern]="pattern.space #aName="ngModel" required ...>
<div *ngIf="aName.invalid && (aName.dirty || aName.touched)">
<div *ngIf=aName.errors.required">...</div>
<div *ngIf="aName.errors.pattern">...</div>
</div>
判断条件如下:
(问题出在后半部分,即判断内容是否全部为空格,(this.EvaluateInfo.content.replace('\s+', '').length > 0)
)
private EvaluatEInfo = {content: ''}
[disabled] = "publishctrl" // 控制按钮是否可用
if (this.EvaluateInfo.content.length > 0){
this.publishctrl = false;
}
else if((this.EvaluateInfo.content.length <= 0 || (this.EvaluateInfo.content.replace('\s+', '').length > 0))
{ this.publishctrl = true;}
- \s ↩
问题在于 replace 你是想用正则,但是传了字符串。
另外也没有必要做无用的替换,直接判断即可