2017-09-01 3 views
0

Meine Webanwendung ist in Java (Backend) geschrieben. Es verwendet das Spring Framework.Javascript akzeptiert nicht mein c: out

Jetzt, wenn mein Controller das Modell zum Frontend jsp zurückgibt, möchte ich einige Werte von seiner Hashmap erhalten.

Dazu verwende ich die Bibliotheken von JSTL und Expression Language.

<c:if test="${not empty model.ladungstraegerNummer}"> 
        yadcf.exFilterColumn(oTable, [[3, [' 
        <c:out value="${model.ladungstraegerNummer}"/> 
        ']]]); 
        </c:if> 

Zuerst habe ich überprüfen, ob die Variable leer ist (manchmal ist es) und nach, dass es in Javascript-Code geschrieben (yadcf ist ein Filter Verlängerung oben auf jQuery und Datentabellen).

Das Ergebnis der c:

yadcf.exFilterColumn(oTable, [[3, ['WNC402']]]); 

Die Apostrophe sind wichtig: aus sollte wie folgt aussehen. Meine Codeausgabe ist:

yadcf.exFilterColumn(oTable, [[3, [' 
          WNC402 
          ']]]); 

Irgendwie akzeptiert Javascript diesen String nicht.

Ich habe meine Frage bearbeitet, weil sie fehlerhaft war. Das c: out funktioniert und die Apostrophe sind wir am richtigen Ort. Ich glaube, ich hatte in meinem String etwas Whitspace, so dass die JS-Funktion es nicht benutzen konnte.

+0

Die Apostrophe sind außerhalb des c: out-Tags, direkt im JSP-Code. Es hat also nichts mit c: out zu tun. –

Antwort

0

Versuchen unter ein:

<c:if test="${not empty model.ladungstraegerNummer}"> 
         yadcf.exFilterColumn(oTable, [[3, [ 
         <c:out value="'${model.ladungstraegerNummer}'"/> 
         ]]]); 
         </c:if> 

JB Nizet der oben Kommentar macht Sinn.

0

Ich habe meinen Code formatiert, es sieht jetzt so aus. Ich entfernte einige Leerzeichen.

 <c:if test="${not empty model.ladungstraegerNummer}"> 
     yadcf.exFilterColumn(oTable, [[3, ['<c:out value="${model.ladungstraegerNummer}"/>']]]); 
     </c:if> 

Ausgang:

yadcf.exFilterColumn(oTable, [[3, ['WNC402']]]); 

Vielen Dank für Ihre Mühe Jungs.

Verwandte Themen