使用jquery将样式设置为jsf中的必填字段
我以前问过一个问题:但我需要在jsf中使用它。我在应用程序中使用primefaces库。我的代码在这里:使用jquery将样式设置为jsf中的必填字段,jquery,jsf,Jquery,Jsf,我以前问过一个问题:但我需要在jsf中使用它。我在应用程序中使用primefaces库。我的代码在这里: Jsf: <h:outputScript library="primefaces" name="jquery/jquery.js" target="head" /> <script type="text/javascript"> $ = jQuery; $(document).ready(function() {
Jsf: <h:outputScript library="primefaces" name="jquery/jquery.js" target="head" />
<script type="text/javascript">
$ = jQuery; $(document).ready(function() {
$("p:inpuText").each(function () {
comp(this);
});
$("[required='true']").blur(function () {
comp(this);
});
$("[required='true']").keyup(function () {
comp(this);
});
$("[required='true']").click(function () {
comp(this);
});
function comp(a) {
if ($(a).val() != "")
$(a).css({
"border": "1px solid #ccc !important",
"background": "#FFF"
});
else $(a).css({
"border": "1px solid #FF0000 !important",
"background": "#FFEFFF"
});
}
Jsf:
$=jQuery$(文档).就绪(函数(){
$(“p:inpuText”)。每个(函数(){
公司(本);
});
$(“[required='true']”)。模糊(函数(){
公司(本);
});
$(“[required='true']”)。键控(函数(){
公司(本);
});
$(“[required='true']”)。单击(函数(){
公司(本);
});
功能组件(a){
如果($(a).val()!=“”)
$(a).css({
“边框”:“1px实心#ccc!重要”,
“背景”:“FFF”
});
else$(a).css({
“边框”:“1px实心#FF0000!重要”,
“背景”:“FFEFFF”
});
}
}))
我想将css设置为空必填字段 你犯了一个概念性思维错误。JS/jQuery不在JSF代码上运行。相反,它在JSF生成的HTML代码上运行。在浏览器中打开JSF页面,右键单击,查看源代码。你看到了吗?这是一个完整的HTML代码。那里没有
元素,只有
元素。没有一个
元素设置了required=“true”
例如,给他们一个特定的样式类:
<p:inputText ... required="true" styleClass="required" />
自定义渲染器或标记文件应该可以消除每次写入样式类的需要。亲爱的BalusC。您的答案仅适用于inputText字段。但不使用某些primefaces组件,如p:calendar或p:selectOneMenu。你能用你的解决方案测试我的代码吗。非常感谢。
<input ... class="required" />
$(":input.required")