2016-07-22 2 views
1

私はPythonとFlaskでアプリケーションを構築しています。 2つのオプションを持つドロップダウンボタンがあります。私はそれが両方のこれらのオプションinclude特定のdivの異なるHTMLをするようにします。 Jinjaでこれを行う方法はありますか?私はWeb開発にはかなり新しいです。Jinjaにhtmlを含むボタンはありますか?

これは私が持っているものです(それは動作しません)が、私が何をしようとしているかを示しています。

<div class="btn-group" role="group"> 
     <!-- Split button --> 
       <div class="btn-group"> 
        <button type="button" class="btn btn-default">Topic Modle</button> 
        <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 
        <span class="caret"></span> 
        <span class="sr-only">Toggle Dropdown</span> 
        </button> 
        <ul class="dropdown-menu"> 

        <li><a href="#lsa">LSA</a></li> <!-- I want this button to include vis_lsa.html --> 

        <li><a href="#lda">LDA</a></li> <!-- and this button to include vis_lda.html --> 

        </ul> 
       </div> 

     {% if #lsa %} 
     {% include 'vis_lsa.html' %} 
     {% endif %} 

     {% if #lda %} 
     {% include 'vis_lda.html' %} 
     {% endif %} 

    </div> 

私はテンプレートのJinjaドキュメントを見ましたが、私がしようとしているものに似たものは見つかりませんでした。代わりにjQueryが必要なのかどうか分かりません。私はjQueryを知らないので、うまくいけばこれを行う必要はないでしょう。

+1

あなたにはいくつかのオプションがあり、そのほとんどにJavaScriptが含まれています。もう1つは、要求されたインクルードでページをレンダリングするURLを各アンカーポイントにする必要があります。しかし、HTMLをJinjaと直接対話させる方法はありません。 – dirn

+0

@dirn JavaScriptやjQueryを調べるべきだと思いますか? JavaScriptは初心者にとっては簡単かもしれませんか?私はJavaScriptのための簡単な "if"ステートメントを調べ、そこから開始すべきでしょうか?ここからどこに行くべきか分かりません。お返事をありがとうございます! – SnarkShark

+1

あなたのやり方によって異なります。 Ajaxを使用したい場合、jQueryはバニラJavaScriptよりはるかに簡単です。すべてを事前にレンダリングし、JavaScriptを使用して可視性を切り替えたい場合、jQueryは過度のものになります。 – dirn

答えて

1

その後request.form値は、それが適切なHTMLファイルを含む後LSA又はLDAのいずれかであるかどうかを確認するcustom filterを作成するドロップダウンにtype="submit"を含むformタグを使用することができます。リクエスト変数はJinjaに対して明示的にavailableです。

関連する問題