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.
Sie müssen {literal}
in Smarty für JavaScript verwenden. Beispiel:
Weitere Informationen finden Sie in der Smarty-Dokumentation .
Kannst du vielleicht so etwas ausprobieren:
%Vor%}
Ich habe inArray durch Javascript indexOf ersetzt, also kann das vielleicht helfen.
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.
Tags und Links javascript php smarty