html - 当用户“离开”它而不输入任何内容时,角度会改变文本字段的颜色
问题描述
基本上我创建了一个看起来像这样的文本字段
<input type="text" class="form-control required" [(ngModel)]="formName">
CSS 类“必需”将文本字段的背景更改为黄色。我的目标是每当用户在文本字段内单击(焦点,基本上想在里面写一些东西)并离开而不输入任何内容(将其留空)时,将该文本字段的背景颜色更改为红色。
我尝试使用[ngClass]
类似这样的东西:
<input type="text" class="form-control required" [(ngModel)]="formName" [ngClass]="{'testRed': !formName}">
问题是,它从一开始就是红色的,因为“formName”从一开始就是空的,这是正确的。有没有在 .ts 文件中调用函数的智能解决方案?
解决方案
您可以通过包含 ng-invalid 来定义外部 css 文件中输入字段的样式,以确保当字段无效时文本字段的颜色会发生变化,并包含 ng-touched 以确保颜色仅在用户触摸时发生变化场至少一次。这将确保您从一开始就没有改变颜色。
input.ng-invalid.ng-touched {
background-color : solid-red;
}
推荐阅读
- android-studio - 为什么服务类没有收到意图,因为它不断给出 java.lang.RuntimeException
- r - 如何在 ggsurvplot 中将间隙插入 y 轴?
- django - Django - 如何将响应放入数组(LIST 中的 DICT)
- arrays - 在C中将作为指针的数组合并到一个(不同大小的)中
- java - 在 Java 中读取带有新行的文本文件
- c++ - 程序返回垃圾值
- c - “找不到指定的文件”错误,当我调试程序时
- botframework - 从消息扩展中的个人聊天中获取未加密的 Teams 聊天 ID
- ios - iOS App-LaunchScreen.storyboard 在 ios 14.2 上显示为白色
- c# - 配置文件未出现在 Visual Studio 的解决方案资源管理器中