Pregunta

Quiero saber si puedo cambiar atributos de etiqueta Apex Visualforce desde el controlador.

¿Puedo hacer algo como esto:?

etiqueta:

 <apex:selectList id="Status" value="blah blah" multiselect="false" size="1">

en el controlador:

if (inc.Status__c == 'Closed'){
    Status.Rendered = false
}

La esperanza que tiene sentido!

Estoy haciendo esto actual , que creo que es un poco largo aliento y quiero evitar:

etiqueta

 <apex:selectList id="Status" value="blah blah" rendered="{!IncidentIsClosed}">

en el controlador

   if (inc.Status__c == 'Closed'){
    IncidentIsClosed = false;
    }

    ....

    public Boolean getIncidentIsClosed() {
            return IncidentIsClosed;
        }

Espero que ayude!

¿Fue útil?

Solución

Sintaxis de los campos de combinación (cosas entre paréntesis {!...}) es el mismo que para las reglas de validación, campos de fórmula, el flujo de trabajo condiciones de activación, etc. Así que usted puede utilizar funciones como TODAY(), así como una lógica más compleja.

Así que creo que si el objeto "inc" es visible en su página, entonces algo así como

...rendered="{!not(inc.Status='Closed')}

debe hacer el truco. Si utiliza el controlador estándar y reemplazar "inc" con el nombre sObject (como "caso").

Otros consejos

Vine a Visualforce de un entorno .NET donde se puede cambiar la página desde el controlador (o por que los medios para crear partes de la página desde el controlador), por lo que entiendo su pregunta ...

Por desgracia, no se puede hacer lo mismo en Visualforce.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top