2016-04-02 13 views
0
<input type="text" name="${task.getTaskId()}today" placeholder="${tm.get(LocalDate.now()).contains(task.getTaskId()) ? 'saved' : 'dosa'}" size="2"> 

Dies ist mein Code befindet sich in einem <c:forEach items="${tasks}" var="task" >. tm ist ein HashMap<LocalDate,List<String>> Ich habe den gleichen Code in einer Java-Datei versucht es funktioniert. Aber in Jsp tut es nicht. Ich bekomme immer dosa was bedeutet, dass die Bedingung falsch ist. Warum ist das ?Bedingter Ausdruck in Jsp innerhalb Eingabe-Tag

Antwort

0

Es könnte Ihre Frage nicht vollständig beantworten, aber soweit ich weiß, um auf eine Eigenschaft oder Feld- oder Instanzvar in EL zuzugreifen, verwenden Sie keine Java-Getter-Methoden, sondern das "." Notation oder die eckigen Klammern.

So zum Beispiel während in Java würden Sie

task.getTaskId() 

In EL gehen, die

task.taskId 

oder

task['taskId'] 

Dann würde ich wahrscheinlich prüfen wäre, wenn es eine Funktion JSTL ist das kann überprüfen, ob ein Wert in einer Karte

enthalten ist 10