2010-12-22 6 views
1

Ich möchte wissen, ob ich Apex VisualForce-Tag-Attribute vom Controller ändern kann.APEX-Tag-Attribute vom Controller ändern?

Kann ich etwas tun ?:

tag:

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

in der Steuerung:

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

Hoffnung, die Sinn macht!

Ich bin Strom diesen tun, was meiner Meinung nach ein bisschen langatmig und wollen vermeiden:

tag

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

in der Steuerung

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

    .... 

    public Boolean getIncidentIsClosed() { 
      return IncidentIsClosed; 
     } 

Hoffnung, die hilft !

Antwort

2

Syntax für Merge-Felder (Zeug in {!...} Klammern) ist das gleiche wie für Validierungsregeln, Formelfelder, Workflow-Triggerbedingungen usw. So können Sie Funktionen wie TODAY() sowie einige komplexere Logik verwenden.

So denke ich, dass, wenn „inc“ Objekt auf Ihrer Seite sichtbar ist dann so etwas wie

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

sollte es tun. Wenn Sie den Standard-Controller verwenden, ersetzen Sie "inc" durch den sObject-Namen (wie "Case").

0

Ich kam aus einer .NET-Umgebung zu Visual, wo Sie die Seite von der Steuerung ändern könnten (oder durch das bedeutet, Teile der Seite von der Steuerung zu schaffen), so dass ich verstehe Ihre Frage ...

Leider können Sie in Visualforce nicht dasselbe tun.

Verwandte Themen