- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 PrimeNG 开发一个 Angular 元素,我将尝试为一些无效的表单字段正确设置样式。
在我的特定表格中,我有这种类型的字段:
<input id="commessa" class="p-invalid" aria-describedby="commessa-help" formControlName="commessa" type="text" pInputText required/>
与此 CSS 关联:
:host ::ng-deep {
.ng-invalid:not(form) {
border-left: 5px solid #a94442 !important; /* red */
border-color: #f44336 !important ;
}
}
它工作正常:我的表单的无效文本字段如我所料具有红色边框。
然后我有这样的数字字段:
<p-inputNumber id="idOrdine" styleClass="test" formControlName="idOrdine"></p-inputNumber>
对于这种类型的字段,我无法为无效字段获取红色边框(例如,如果我有一个空的 p-inputNumber 字段是必需的)。
我尝试了很多方法,但都没有用。唯一改变我的边框颜色的是设置了这个 CSS 规则:
.ui-inputtext {
border: 1px solid red;
}
但在这种方式下,它将所有输入字段设置为红色边框。
仅在无效的 p-inputNumber 字段上设置红色边框的解决方案是什么?
**EDIT-1:检查呈现字段的 DOM 是:
<div _ngcontent-ugn-c193=""
class="col-10">
<p-inputnumber _ngcontent-ugn-c193=""
id="idOrdine"
styleclass="test"
formcontrolname="idOrdine"
ng-reflect-style-class="test"
ng-reflect-name="idOrdine"
class="ng-untouched ng-invalid ng-dirty">
<input pinputtext=""
class="ui-inputnumber-input ui-inputtext ui-corner-all ui-state-default ui-widget"
aria-valuenow="null">
<span ng-reflect-ng-class="[object Object]"
class="ui-inputnumber ui-widget">
<!--bindings={
"ng-reflect-ng-if": "false"
}-->
<!--bindings={
"ng-reflect-ng-if": "false"
}-->
<!--bindings={
"ng-reflect-ng-if": "false"
}-->
</span>
</p-inputnumber>
</div>
与内部 input pinputtext 标签相关的 CSS 是:
body .ui-inputtext {
font-size: 14px;
color: #333333;
background: #ffffff;
padding: 0.429em;
border: 1px solid #a6a6a6;
transition: border-color 0.2s, box-shadow 0.2s;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
在这里(通过 Chrome 工具)更改边框颜色...但我只能通过 Chrome 开发工具...而不是通过代码...
最佳答案
在全局样式文件中添加这些样式规则
.ui-inputtext.ng-dirty.ng-invalid , .ui-inputtext.ng-touched.ng-invalid{
border: 1px solid red !important;
background: rgba(255, 0, 0, 0.35);
box-shadow: 0 0 5px 1px rgba(255, 0, 0, 0.2) inset !important;
}
已更新 ⭐
如果我们使用 p-inputnumber 组件
p-inputnumber.ng-dirty.ng-invalid .ui-inputtext ,
p-inputnumber.ng-touched.ng-invalid .ui-inputtext {
border: 1px solid red !important;
background: rgba(255, 0, 0, 0.35);
box-shadow: 0 0 5px 1px rgba(255, 0, 0, 0.2) inset !important;
}
the
ng-touched
not added even when you enter and leave it that seem an error from the component itself 🐱👤
关于css - 如何通过CSS设置无效p-inputNumber PrimeNg表单组件的红色边框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63603197/
我正在尝试使用下拉菜单过滤 primeNG 表中的列,但我只想在按下“应用”按钮时应用过滤器。现在过滤发生在 onChange 事件中。如果我删除 onChange 事件,过滤器将不起作用 这是没有
需要在 primeNg 的文本框内放置一个清晰的图标。单击它应该会清除该字段。 最佳答案 对于 Primefaces 关于prim
我想在我自己的组件中包装一个 primeng 自动完成组件,但不知道如何提供 formControlName: 错误:未捕获( promise ):错误:formControlName 必须与父 fo
当我将滚动条应用到主菜单时,我遇到了子菜单被切断的问题,但我无法让子菜单显示在滚动条上方。 下面是一个简单的代码:https://stackblitz.com/edit/angular-cyvv7d
我使用 PrimeNG 创建了一个数据表。我刚刚为数据表创建了 2 个标题。我实际上会从服务器获取数据,因此如果没有数据,我不希望显示默认的“未找到记录消息”。 如果表格中没有数据,我希望表格为空。
我从 Angular 2 RC5 和 PrimeNG 1.0.0-beta.13 beta 开始。我将 PrimeNg 组件作为 xModules 加载,并且在显示数据表、输入、SelectItem、
我正在使用一个动态对话框,我想在页脚上有一些按钮,但是在这个组件中似乎只允许文本作为页脚。 const ref = this.dialogService.open(Te
我正在尝试在按钮上添加条件工具提示。使用primeng工具提示组件: 它不工作。 但是,没有“tooltipDisabled”的工具提示工作正常。 有人可以帮帮我吗? 最佳答案 使用
我想用styleClass Togglebutton 的属性(property)成分。如 another post 中所述,我认为使用以下方法很简单: styleClass="test" 在我的 cs
根据https://www.primefaces.org/primeng/#/table的文档,重置方法应为“重置排序,过滤器和分页器状态”。 问题在于,重置表方法未从UI中删除过滤器。 (尽管重置后
我已经使用 PrimeNG Table 创建了一个 Angular 应用程序。我在这里查看了 PrimeNG 文档 ( https://www.primefaces.org/primeng/#/tab
我正在使用 PrimeNg 库。它有很好的组件,默认创建可拖动的对话框。但在某些情况下,我正在使用 PrimeNg 的 API dialogService , 动态创建对话框。注意 this.dial
使用 PrimeNg 的动态对话示例展示了目标对话如何获取数据并显示。 我可以通过创建一个带有 observable 的服务来将数据传递给对话,但我知道对话服务有一些可用的参数(如数据)可以传递。 对
我在 Angular 5 中使用 PrimeNG 6.0.2,但我遇到了 的问题表插入。我切换到 Table 因为 DataTable 已被弃用。现在,我无法像以前那样访问过滤值。 假设我通过 Vie
我对 primeNG 表有疑问。表格有很多列,在列切换上,列宽在变化,表格看起来很乱。 表格可滚动和可调整大小,因此根据文档,由于技术原因不支持自动布局。 所以也许有一些解决方法,或者是否有一种方法可
在我的 Angular 项目中,我使用 primeNG 库我正在尝试使数据表中的行可编辑,所以我按照文档进行操作[ https://www.primefaces.org/primeng/#/table
抱歉菜鸟问题... 使用primeng包时,推荐的将焦点设置在控件上的方法是什么?使用传统输入控件时,我设置了一个表单变量 (#variable) 并使用 @ViewChild 获取对它的引用,以便我
我需要在 PrimeNG 数据表中显示大量数据(400.000 条记录)。为此,我需要一个延迟加载表,因为您无法一次将所有数据加载到表中(这会使浏览器崩溃)。 为了创建表,我使用了以下技术: Angu
我使用 PrimeNG 5.0.1、Angular 5.1 中的组件日历,它允许选择日期和时间: 但是 timepicker 在重新加载页面时被卡住。每次显示选择器时是否可以更新时间值? 我还没有发
在 Angular v7 项目中使用 PrimgNG v7.1.3。 在一个简单的组件中实现了多选 ( https://www.primefaces.org/primeng-7.1.3/#/multi
我是一名优秀的程序员,十分优秀!