Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.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
RichFaces 4:<;rich:Jquery>;RF showcase中的Datatable样式效果在范围视图中不起作用_Jquery_Jsf 2_View Scope_Richdatatable - Fatal编程技术网

RichFaces 4:<;rich:Jquery>;RF showcase中的Datatable样式效果在范围视图中不起作用

RichFaces 4:<;rich:Jquery>;RF showcase中的Datatable样式效果在范围视图中不起作用,jquery,jsf-2,view-scope,richdatatable,Jquery,Jsf 2,View Scope,Richdatatable,我正在尝试对jsf数据表进行样式设置,如下所示: 它在第一次加载页面时工作。但是,当我使用ajax调用对列进行排序时(如前面的链接所述),样式就消失了。如果我刷新,样式就会恢复 如果我将我的范围放在请求scop中。样式正在工作,但函数排序不再工作。我不太明白的事情。(对这种现象的解释感兴趣……) 因此,我理解jquery的担忧,但我没有找到一种方式来说明:“嘿,当我对数据表值排序时,不要让样式消失” 也许和《重播》有关 巴卢斯克,有什么想法吗?:) 多谢各位 祝你今天愉快 <h:form

我正在尝试对jsf数据表进行样式设置,如下所示:

它在第一次加载页面时工作。但是,当我使用ajax调用对列进行排序时(如前面的链接所述),样式就消失了。如果我刷新,样式就会恢复

如果我将我的范围放在请求scop中。样式正在工作,但函数排序不再工作。我不太明白的事情。(对这种现象的解释感兴趣……)

因此,我理解jquery的担忧,但我没有找到一种方式来说明:“嘿,当我对数据表值排序时,不要让样式消失”

也许和《重播》有关

巴卢斯克,有什么想法吗?:)

多谢各位

祝你今天愉快

<h:form id="formSort" >

<a4j:outputPanel id="ajaxOutputPanel" layout="block" ajaxRendered="true">

        <rich:dataTable  id="customList"  style="width:70%;margin-left:auto;margin-right:auto;" var="c" value="#{participant.listParticipant}"   rendered="#{not empty participant.listParticipant}"
                styleClass="stable"
                rowClasses="order-table-odd-row,order-table-even-row">

            <f:facet name="header"><h:outputText value="PARTICIPANTS" /></f:facet>

            <rich:column>
               <f:facet name="header">  <h:outputText value="ID DE L'ETUDE" /></f:facet>
                <h:outputText value="#{c.id_study}" />
            </rich:column>

            <rich:column  sortBy="#{c.enrollment_date}" id="enrollment_date" comparator="#{participant.dateComparator}"  sortOrder="#{participant.dateOrder}">
                <f:facet name="header" >
                    <a4j:commandLink value="DATE D'INCLUSION" render="customList" action="#{participant.sortByDates}" />
                </f:facet>
                <h:outputText value="#{c.enrollment_date}" />
            </rich:column>

        </rich:dataTable>


        </rich:panel>

</a4j:outputPanel>

</h:form>

<rich:jQuery selector="#customList tr:odd" query="addClass('odd-row')"  />
<rich:jQuery selector="#customList tr:even" query="addClass('even-row')" />
<rich:jQuery selector="#customList tr"  query="mouseover(function(){jQuery(this).addClass('active-row')})"/>
<rich:jQuery selector="#customList tr"  query="mouseout(function(){jQuery(this).removeClass('active-row')})"/>  

好的,添加attach type=“live”和事件类型后,我可以做得更好:

<rich:jQuery selector="#customList tr:odd"  query="addClass('odd-row')"  />
<rich:jQuery selector="#customList tr:even" query="addClass('even-row')" />

<rich:jQuery selector="#customList tr"  event ="mouseover" query="jQuery(this).addClass('active-row')" attachType="live"/>
<rich:jQuery selector="#customList tr"  event ="mouseout" query="jQuery(this).removeClass('active-row')" attachType="live"/>
另一个问题是为什么在rich:datatable中,RowClass设置为“order table奇数行,order table偶数行”,而我的css只命名为奇数行和偶数行。我迷路了

更新:我将css更改为订单表偶数行,订单表奇数行。。。现在所有东西都正常工作了

 .even-row {background-color: #FCFFFE;}

 .odd-row {background-color: #ECF3FE;}

 .active-row {background-color: #FFEBDA !important;cursor: pointer;}