删除 ui-state-error cellEditor primefaces
Remove ui-state-error cellEditor primefaces
我想在像这样的 primefaces 上使用 validateLongRange 将 inputText 放入 cellEditor 中:
<p:contextMenu for="dataTableAvaliacao" widgetVar="cMenu">
<p:menuitem value="Edit Cell" icon="ui-icon-search"
onclick="PF('cellNota').showCellEditor();return false;" />
<p:menuitem value="Hide Menu" icon="ui-icon-close"
onclick="PF('cMenu').hide()" />
</p:contextMenu>
<p:dataTable
id="dataTableAvaliacao" var="aluno"
value="#{alunoAvaliacaoMB.alunos}"
editable="true" editMode="cell"
widgetVar="cellNota">
<p:columns id="coluna-nota"
value="#{alunoAvaliacaoMB.colunasAvaliacoes}" var="avaliacao"
columnIndexVar="colIndex" >
<p:cellEditor>
<f:facet name="output">
<h:outputText
value="#{aluno.getNota(avaliacao.property).vlNotaString}" />
</f:facet>
<f:facet name="input">
<p:inputText id="inputNota"
value="#{aluno.getNota(avaliacao.property).vlNotaString}">
<f:validateLongRange maximum="10" minimum="-10" />
</p:inputText>
</f:facet>
</p:cellEditor>
</p:columns>
</p:dataTable>
问题是当验证错误时,primefaces 正在绘制 inputText 和 cellEditor,外观如下所示:
如何从 gridcell 中删除 ui-state-error?
我试过使用 jQuery: $('.ui-state-error').removeClass('ui-state-error')
但我不知道放在哪里。
我正在使用 sentinel-layout。 http://primefaces.org/layouts/sentinel
抱歉图片和代码中的葡萄牙语。
更新
我无法更改 CSS(显然),因为 inputText 和 cellgrid 使用由 primefaces 生成的相同样式。
下面两张图片显示了这一点。
首先是inputText的样式
第二种gridcell样式
如何在不影响两个组件的情况下更改 CSS?
我仍在寻找一种方法来删除带有 jQuery 的 class。我可以使用 jQuery.
删除样式
一种简单的方法是 覆盖 使用任何默认值的特定情况的样式。然后 Primefaces 可以更改样式class - 没有人会注意到:
td.ui-editable-column.ui-state-error{
border: 1px solid #dadada !important; // Or whatever is the default color.
// Figure out using inspect element
// on a non error cell.
}
简而言之,只有当 classes ui-editable-column
AND ui-state-error
样式在 same[=36= 上可用时,才会应用此样式] td
-标签。因此它不会影响输入,因为
- 输入没有
td
-tag
- 输入没有
ui-editable-column
class.
请参阅 fiddle:"double" 选择器应该非常适合您的用例:
请注意,td
蜂鸣 class="ui-editable-column ui-state-error"
没有红色边框,即使由于 ui-state-error
.
应该有红色边框
首先感谢大家的帮助。
我已经解决了在样式 属性 上添加一些属性的问题,例如:
<p:columns id="coluna-nota" style="height: 25px;width:25px; border: solid 1px #E5EBF0 !important;"
value="#{alunoAvaliacaoMB.colunasAvaliacoes}" var="avaliacao"
columnIndexVar="colIndex" >
这不是我想做的最好的方法,但这是我唯一可以解决问题的方法,可能是因为我在网络开发方面缺乏经验:)
我想在像这样的 primefaces 上使用 validateLongRange 将 inputText 放入 cellEditor 中:
<p:contextMenu for="dataTableAvaliacao" widgetVar="cMenu">
<p:menuitem value="Edit Cell" icon="ui-icon-search"
onclick="PF('cellNota').showCellEditor();return false;" />
<p:menuitem value="Hide Menu" icon="ui-icon-close"
onclick="PF('cMenu').hide()" />
</p:contextMenu>
<p:dataTable
id="dataTableAvaliacao" var="aluno"
value="#{alunoAvaliacaoMB.alunos}"
editable="true" editMode="cell"
widgetVar="cellNota">
<p:columns id="coluna-nota"
value="#{alunoAvaliacaoMB.colunasAvaliacoes}" var="avaliacao"
columnIndexVar="colIndex" >
<p:cellEditor>
<f:facet name="output">
<h:outputText
value="#{aluno.getNota(avaliacao.property).vlNotaString}" />
</f:facet>
<f:facet name="input">
<p:inputText id="inputNota"
value="#{aluno.getNota(avaliacao.property).vlNotaString}">
<f:validateLongRange maximum="10" minimum="-10" />
</p:inputText>
</f:facet>
</p:cellEditor>
</p:columns>
</p:dataTable>
问题是当验证错误时,primefaces 正在绘制 inputText 和 cellEditor,外观如下所示:
如何从 gridcell 中删除 ui-state-error? 我试过使用 jQuery: $('.ui-state-error').removeClass('ui-state-error') 但我不知道放在哪里。
我正在使用 sentinel-layout。 http://primefaces.org/layouts/sentinel
抱歉图片和代码中的葡萄牙语。
更新
我无法更改 CSS(显然),因为 inputText 和 cellgrid 使用由 primefaces 生成的相同样式。
下面两张图片显示了这一点。
首先是inputText的样式
第二种gridcell样式
如何在不影响两个组件的情况下更改 CSS? 我仍在寻找一种方法来删除带有 jQuery 的 class。我可以使用 jQuery.
删除样式一种简单的方法是 覆盖 使用任何默认值的特定情况的样式。然后 Primefaces 可以更改样式class - 没有人会注意到:
td.ui-editable-column.ui-state-error{
border: 1px solid #dadada !important; // Or whatever is the default color.
// Figure out using inspect element
// on a non error cell.
}
简而言之,只有当 classes ui-editable-column
AND ui-state-error
样式在 same[=36= 上可用时,才会应用此样式] td
-标签。因此它不会影响输入,因为
- 输入没有
td
-tag - 输入没有
ui-editable-column
class.
请参阅 fiddle:"double" 选择器应该非常适合您的用例:
请注意,td
蜂鸣 class="ui-editable-column ui-state-error"
没有红色边框,即使由于 ui-state-error
.
首先感谢大家的帮助。
我已经解决了在样式 属性 上添加一些属性的问题,例如:
<p:columns id="coluna-nota" style="height: 25px;width:25px; border: solid 1px #E5EBF0 !important;"
value="#{alunoAvaliacaoMB.colunasAvaliacoes}" var="avaliacao"
columnIndexVar="colIndex" >
这不是我想做的最好的方法,但这是我唯一可以解决问题的方法,可能是因为我在网络开发方面缺乏经验:)