2016-06-23 7 views
0

Ich muss die Beschriftung bedingt im Primefaces-Kalender ändern. Ich habe den folgenden CodeBedingte Änderung der Beschriftung auf den Kalenderoberflächen

<p:calendar value="#{requestMBean.requestTO.startDate}" id="startDate" 
label="#{requestMBean.requestTO.requestType eq 'SINGLEDAY'}?#{msg['wfmt.label.request.fromDate']}:#{msg['wfmt.label.request.visitingDate']}}" 
pattern="dd.MM.yyyy"/> 

Wenn die Validierung fehlschlägt, erwarte ich, nur eine Bezeichnung zu sehen. Aber ich bekomme "Bitte geben Sie ein: true? FromDate: visingDate".

Wie kann ich nur ein Etikett bedingt rendern?

+0

Ihre el ist nicht korrekt. # {requestMBean.requestTO.requestType eq 'SINGLEDAY'}? # {msg ['wfmt.label.request.fromDate']}: # {msg ['wfmt.label.request.visitingDate']}} Ändern Sie es wie # { Bedingung ? true: false} –

+0

Wie soll ich das ändern? – user2017810

Antwort

1
#{requestMBean.requestTO.requestType eq 'SINGLEDAY'}?#{msg['wfmt.label.request.fromDate']}:#{msg['wfmt.label.request.visitingDate']}} is wrong. 

ändern es zu "#{condition ? true statement : false statement}", wenn Sie möchten, können Sie() für die Lesbarkeit des Codes verwenden.

Edited

#{requestMBean.requestTO.requestType eq 'SINGLEDAY' ? msg['wfmt.label.request.fromDate'] : msg['wfmt.label.request.visitingDate']} 
+0

akzeptiere meine Antwort, wenn sie korrekt ist. –

+0

# {requestMBean.requestTO.requestType eq 'SINGLEDAY'? # {Msg ['wfmt.label.request.fromDate']}: # {msg ['wfmt.label.request.visitingDate']}}. Wenn ich das hinzufügen sehe ich EL Parser Fehler – user2017810

+0

warum Sie mehrere verwenden # es ist nicht erforderlich. siehe mein ans editiert –