方法1: Flaskのテンプレート内でJavaScript関数を呼び出す FlaskのテンプレートエンジンであるJinja2を使用して、JavaScript関数を呼び出すことができます。以下はその例です。
app.py (Pythonコード):
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
if __name__ == '__main__':
app.run()
index.html (テンプレート):
<!DOCTYPE html>
<html>
<head>
<title>FlaskでJavaScript関数を呼び出す</title>
<script>
function myFunction() {
alert('JavaScript関数が呼び出されました!');
}
</script>
</head>
<body>
<h1>FlaskでJavaScript関数を呼び出す</h1>
<button onclick="myFunction()">関数を呼び出す</button>
</body>
</html>
上記の例では、FlaskアプリケーションはルートURLにアクセスされたときにindex.htmlを表示します。index.html内ではJavaScript関数myFunction()
が定義されており、ボタンがクリックされるとその関数が呼び出されます。
方法2: FlaskのエンドポイントからJavaScript関数を呼び出す FlaskのエンドポイントからJavaScript関数を呼び出すこともできます。以下はその例です。
app.py (Pythonコード):
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/api/call-js-function')
def call_js_function():
# JavaScript関数を呼び出す処理
# ...
return jsonify({'result': 'JavaScript関数が呼び出されました!'})
if __name__ == '__main__':
app.run()
JavaScriptコード:
fetch('/api/call-js-function')
.then(response => response.json())
.then(data => {
alert(data.result);
});
上記の例では、Flaskアプリケーションは/api/call-js-function
エンドポイントにアクセスされたときにJavaScript関数を呼び出します。JavaScriptコードではfetch APIを使用してエンドポイントにリクエストを送り、レスポンスのデータを取得してアラートで表示しています。
これらはFlaskでJavaScript関数を呼び出す例の一部です。他にもさまざまな方法がありますが、これらの例を参考にしてください。