2016-10-12 16 views
1

ボタンを押すと、(入力フィールドから)2つの文字列を引数とするHTMLファイルのjavascript関数を呼び出します。関数が呼び出されると、私はこれらのパラメータをフラスコファイルに渡し、そこで別の関数を呼び出したいと思います。どのように私はこれを達成するだろうか?JavaScriptからフラスコに引数を渡す

のjavascript:

<script> 
    function ToPython(FreeSearch,LimitContent) 
    { 
     alert(FreeSearch); 
     alert(LimitContent); 
    } 
</script> 

私は呼びたいフラスコ機能:

@app.route('/list') 
def alist(FreeSearch,LimitContent): 
    new = FreeSearch+LimitContent; 
    return render_template('list.html', title="Projects - " + page_name, new = new) 

私はjavascriptのが、そのことはできないで"filename.py".alist(FreeSearch,LimitContent)ような何かをしたい...

答えて

1

JSコードから、フラスコ経路のURLを(GETメソッドを使用して)呼び出して、クエリ引数としてパラメータを渡します。

あなたの関数定義のその後

/list?freesearch=value1&limit_content=value2 

@app.route('/list') 
def alist(): 
    freesearch = request.args.get('freesearch') 
    limitcontent = request.args.get('limit_content') 
    new = freesearch + limitcontent 
    return render_template('list.html', title="Projects - "+page_name, new=new) 

代わりに、パス変数を使用することができます。

/list/value1/value2 

@app.route('/list/<freesearch>/<limit_content>') 
def alist(): 
    new = free_search + limit_content 
    return render_template('list.html', title="Projects - "+page_name, new=new) 
+0

感謝を!どのように '/ list?freesearch = value1、limit_content = value2'をjavascriptに追加するのですか? – Bonbin

+0

AFAIU、あなたがしたいことは、あなたのJSコードからpythonフラスコアプリまで、GET(またはPOST、それはあなた次第です)を実行することです。 JSからリクエストを実行する方法については、[この回答](http://stackoverflow.com/a/4033310/4653485)を参照してください。 –

関連する問題