from flask import Flask,render_template,url_for
app = Flask(__name__)
@app.route("/")
def index():
return render_template("index.html")
@app.route("/okay")
def okay():
return render_template("okay.html")
if __name__ == '__main__':
app.run(debug=True)
这是index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Page Title</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body>
<h1>index</h1>
<h2 onclick="{{ url_for('okay') }}">click me</h2>
<h2><a href="{{ url_for('okay') }}">click me</a></h2>
</body>
</html>
点击我 这不起作用 也 表单操作url_for不起作用
change route and send message using socketio but socketio is working
如何解决此问题?
答案 0 :(得分:0)
在HTML元素上使用时,onclick
通常会导致对诸如onclick=myFunction()
这样的脚本函数的调用。
<body>
<h1>index</h1>
<h2 id="foo" onclick="myFunction();">click me</h2>
<h2><a href="{{ url_for('okay') }}">click me</a></h2>
</body>
您需要添加一些Javascript代码才能使onclick=myFunction();
正常工作。
function myFunction() {
$.ajax({
url: '/okay',
data: JSON.stringify(data),
method: 'POST',
contentType: 'application/json',
success: function(data) {
$('#foo').replaceWith(data);
}
});
};