2016-07-22 10 views
1

Ich baue eine App mit Python und Flask. Ich habe eine Dropdown-Taste mit zwei Optionen. Ich möchte es so, dass beide Optionen include ein anderes HTML in einem bestimmten div. Gibt es eine Möglichkeit, dies mit Jinja zu tun? Ich bin ziemlich neu in der Webentwicklung.Schaltflächen, die HTML mit Jinja enthalten?

Hier ist, was ich habe (das funktioniert nicht), aber zeigt, was ich versuche zu tun.

Ich habe die Jinja Dokumentation für Templates angeschaut, aber habe nichts gefunden, was dem ähnlich ist, was ich versuche zu tun. Ich bin mir nicht sicher, ob ich stattdessen jQuery dafür brauche? Ich kenne kein jQuery, also werde ich es hoffentlich nicht brauchen.

+1

Sie haben ein paar Optionen, von denen die meisten JavaScript enthalten. Der andere erfordert, dass jeder Ankerpunkt zu einer URL gemacht wird, um die Seite mit dem angeforderten Include darzustellen. Es gibt keine Möglichkeit, HTML direkt mit Jinja interagieren zu lassen. – dirn

+0

@dirn, Denkst du, ich sollte dann in JavaScript oder jQuery schauen? JavaScript könnte für einen Anfänger einfacher sein? Sollte ich in einfache "if" -Anweisungen für JavaScript schauen und von dort anfangen? Ich bin mir nicht sicher, wo ich von hier aus hingehen soll. Danke für deine Antwort! – SnarkShark

+1

Es hängt davon ab, wie Sie es tun. Wenn Sie Ajax verwenden möchten, ist jQuery viel einfacher als Vanilla JavaScript. Wenn Sie alles vorrendern und nur JavaScript verwenden möchten, um die Sichtbarkeit zu ändern, wird jQuery Overkill. – dirn

Antwort

1

können Sie ein Formular-Tag verwenden type="submit" in der Dropdown-Liste enthält dann eine custom filter erstellen, die entweder, wenn der request.form Wert überprüft ist lsa oder LDA wonach sie die entsprechende HTML-Datei enthält. Die Anfragevariable lautet explizit available an Jinja.