Question

J'ai un client qui a créé une application Oracle ADF / JSF 1.1. Sur l'une des pages qu'ils ont une table avec la première colonne comme un permis boutons radio mutuellement exclusifs. Je devais améliorer la page et ajoutez la ligne totale avec le bouton radio désactivé. Comment puis-je désactiver dans la classe Bean ou sur la page sans utiliser JavaScript? J'ai essayé de faire quelque chose comme:

<af:tableSelectOne id="slctone"  disabled="true"/>

mais désactiver tous les boutons. J'ai essayé de mettre le code comme celui ci-dessous, mais qui désactive le lien à la page suivante sur la deuxième colonne:

TcpiVO t= (TcpiVO) JSFUtils.getManagedBeanValue("row");
if(t.getLabel().contains("TOTALS")){
    return false;
}

Voici l'extrait de code:

    <f:facet name="selection">
      <af:tableSelectOne id="slctone"  />
    </f:facet>

    <af:column sortable="false" headerText="#{tcWizard.partsHeaderLabel}"  width="325"  >

      <af:commandLink text="#{row.label}" action="#{tcWizard.retrieveDrillDownList}" actionListener="#{tcWizard.nextDrillDownElement}"
                      rendered="#{tcWizard.continueDrill }" id="drlLnk" />
      <af:outputText value="#{row.label}" rendered="#{!tcWizard.continueDrill }" />

    </af:column>
    <af:column sortable="false" headerText="#{msg.SALES}" styleClass="bordersBottomGrey"  width="80">
      <af:outputText value="#{row.sales}"/>
    </af:column>
Était-ce utile?

La solution

  

Je devais améliorer la page et ajoutez la ligne totale avec le bouton radio désactivé. Comment puis-je désactiver dans la classe Bean ou sur la page sans utiliser JavaScript?

Il suffit d'utiliser EL dans l'attribut disabled:

disabled="#{we are in the last row}"

Cela devrait revenir true lorsque la condition mentionnée est remplie.

Sinon, vous pouvez utiliser un pied de page à l'intérieur du composant table:

<f:facet name="footer">
    ...
</f:facet>

Cela va générer une <tfoot> dans laquelle vous pouvez placer une ligne indépendante qui ne serait donc pas affectée par d'autres lignes, ni vice versa.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top