0 Replies Latest reply on Jun 5, 2008 5:42 AM by Immo Benjes

    Strange behaviour with id attribute in aj4:coomandLink in ri

    Immo Benjes Apprentice


      I've got a table containing one column of aj4:commandLinks.
      I am trying to use spatial key navigation using CSS3 styles between the links so I need to know the ids for the style attribute
      I basically want something like

      <a href="#" id="Link1" style="nav-index:1;nav-down:Link2">Link 1</a>
      <a href="#" id="Link2" style="nav-index:2;nav-up:Link1;nav-down:Link3">Link 2</a>

      To do that I need to set an individual id for every link and I need to know in advance what ids my neighbours have. But when I try to do that I get an odd behaviour. (With Seam 2.0.2GA and RichFaces 3.2.0.SR1)

      The example is like this:
      <a4j:form id="FormID">
       <rich:dataTable id="TableID" var="stationEntry"
       rendered="#{not empty StationListManager.entryList}">
       <rich:column id="ColID">
       <a4j:commandLink value="#{stationEntry.station.name}"

      The odd thing is that the function for the id attribute in commandLink
      is called before the function for the value attribute in the dataTable
      and stationEntry is null at that time.
      And the id function
      is only called once! I expected it to be called for every link.
      Can't I set the id for every link? It seems RichFaces will just take the ids of the parents and ad its own numbering to it.
      Is that the correct behaviour? How can I predict what ids I will get?

      Thanks for your help