Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jquery将样式设置为jsf中的必填字段_Jquery_Jsf - Fatal编程技术网

使用jquery将样式设置为jsf中的必填字段

使用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中使用它。我在应用程序中使用primefaces库。我的代码在这里:

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")