你好我想检索一个表中所选项目的列索引,用于在表格的标题中做一个颜色指示,当鼠标移动时,包含该元素的表格的头部会改变颜色< / p>
这是我创作的功能
$(function () {
var content = $('tr').children().children().children();
content.hover(function () {
var col2 = $(this).parent().parent().parent();
var index2 = col2.index($(this));
$('tr:first-child :nth-child(' + index2 + ')').css('background-color', 'red')
});
});
感谢
答案 0 :(得分:1)
index
仅在参数是您调用它的元素的子元素时才有效。在您的情况下,$(this)
是col2
的曾孙。我想你需要使用:
var index2 = col2.index($(this).parent().parent());
然后,当您将index2
与:nth-child
一起使用时,需要添加1,因为该选择器是从1开始的。
$('tr:first-child :nth-child(' + (index2+1) + ')').css('background-color', 'red')
答案 1 :(得分:0)
<h:form id="form">
<p:growl id="messaget"></p:growl>
<center>
<p:panelGrid columns="#{horaireBean.listCalendrier.size()+1}"
styleClass="horaire1" >
<p:outputLabel >
<center>
<h4>Catégorie/Calendrier</h4>
</center>
</p:outputLabel>
<c:forEach var="cal" begin="1"
end="#{horaireBean.listCalendrier.size()}">
<p:outputLabel
value="#{horaireBean.listCalendrier.get(cal-1).designation}" />
</c:forEach>
<c:forEach var="j" begin="1"
end="#{horaireBean.listCategorie.size()}">
<p:outputLabel
value="#{horaireBean.listCategorie.get(j-1).desigCat}" />
<c:forEach var="i" begin="1"
end="#{horaireBean.listCalendrier.size()}">
<p:selectOneMenu value="#{horaireBean.sequence2}" styleClass="horaire2"
converter="sequenceConverter" >
<f:selectItem itemLabel="#{horaireBean.listehoraire.get(j-1).get(i-1).desigSeq}"/>
<f:selectItems value="#{sequencebean.listeSequence}" var="seq" itemLabel="#
{seq.desigSeq}" itemValue="#{seq}" />
<p:ajax event="change" process="@this" onstart="#{horaireBean.attribuer(j-1,i-1)}"
update=":formheader:enregistrer :formheader:annuler" />
</p:selectOneMenu>
</c:forEach>
</c:forEach>
</p:panelGrid>
</center>
</h:form>`