Javascript Variable und Smarty

8

Ich versuche, etwas Javascript mit Smarty zu machen und javascript-Variable zu verwenden und zu prüfen, ob der Wert in einem Smarty-Array enthalten ist.

Unten ist der Code, den ich habe

%Vor%

Das Problem, mit dem ich habe, ist {if '9'|in_array:$Applications} . Im Moment habe ich den Wert fest programmiert, anstatt die Javascript-Variable als Test zu verwenden, aber ich bekomme die gleichen Ergebnisse.

Im Folgenden sehen Sie, wie das Array aussieht, wenn es innerhalb von smarty gedruckt wird.

%Vor%

Es gibt mehrere Werte in diesem Listenfeld cboApplications mit einem Wert von 8, 5, 6, 9 und 10.

Aus irgendeinem Grund verhält sich die Datei console.log, obwohl nur 9 im $ Applications-Array vorhanden ist, so, als ob jedes einzelne Element innerhalb des Arrays und nicht nur 9 wäre.

Vielen Dank für Ihre Hilfe.

    
Boardy 30.05.2015, 22:20
quelle

4 Antworten

2

Sie müssen {literal} in Smarty für JavaScript verwenden. Beispiel:

%Vor%

Weitere Informationen finden Sie in der Smarty-Dokumentation .

    
Richard 30.05.2015 22:29
quelle
2

Kannst du vielleicht so etwas ausprobieren:

%Vor%

}

Ich habe inArray durch Javascript indexOf ersetzt, also kann das vielleicht helfen.

    
Marko Vasic 08.06.2015 10:07
quelle
2

Sie überprüfen immer, ob sich 9 im $Applications -Array befindet, also wird es immer übergeben, weil wir wissen, dass 9 im Array ist.

Können Sie stattdessen den eigentlichen Code angeben, der die Variable 9 prüft? Denken Sie auch daran, dass der Smarty-Code auf dem Server ausgeführt wird, während das JavaScript nicht funktioniert. Daher kann ich mir nicht wirklich vorstellen, was Sie erreichen wollen. Tatsächlicher Code könnte helfen.

    
gabo 05.06.2015 18:20
quelle
2
%Vor%     
shawn 08.06.2015 13:03
quelle

Tags und Links