我一直在用头撞墙来解决这个问题。我正在写一个应用程序,理想情况下,当HTML中的onclick发生时,运行FLASK中的一个python脚本。问题是,我所做的一切似乎都不起作用。我不再出错了,但程序却不能运行。
我试着通过AJAX访问Python脚本,我试着在HTML中通过jscript调用Python脚本,我为Python脚本创建了一个单独的文件,而不是通过Flask运行它....
</style>
<h1>Book Roulette</h1>
<h2>Discover Something New</h2>
<h3>Click the image to download a surprise book</h3>
<a href="/static/gut.py"> <button class="button" style="background: url(/static/images/stack.jpg)" onclick="button();" action="/button"></a>
</button>
<script>
$(function() {
$('button').click(function() {
$.ajax({
url: 'static/gut.py',
data: $('form').serialize(),
type: 'POST',
success: function(response) {
console.log(response);
error: function(error) {
console.log(error);
</script>
</body>
</html>
以下是我的Flask/Python文档
from flask import Flask, render_template
from gutenberg.acquire import load_etext
from gutenberg.cleanup import strip_headers
import random
app = Flask(__name__, static_url_path='/static')
@app.route('/books')
def books():
return render_template("main.html")
@app.route('/button', methods=["GET", "POST"])
def button():
f = open("GutProject.txt", "w")
for x in range(1):
y = (random.randint(0, 59000))
text = strip_headers(load_etext(y)).strip()
f.write(text)
if __name__ == "__main__":
app.run(debug=True)
我想做的是,当我点击我的HTML按钮,在用户的电脑上生成一个新的文件时,让Python代码运行。到目前为止,我已经达到了这样的程度:当我点击按钮的时候,什么都没有发生。