无需重新加载页面即可触发瓶子功能

Trigger bottle function without reloading page

我的瓶子 app.py 看起来像:

@route('/submit/<var>')
def submit(var):
  # do action
  redirect("/")

我有一个简单的 html 按钮,当点击

时会重定向到所需的页面

onclick="window.location.href='/submit/value'"

但这会导致整个页面有效刷新,方法是转到 link 然后立即返回,将用户置于页面顶部等等。

如何让它在不刷新的情况下完成瓶子后端?

在您的模板中:

<button type="button" onclick="onSubmit('Value')">Sumbit!</button>>
<p id="response"></p>
<script>
function onSubmit(value) {
    var myRequest = new Request('/submit/' + value);
    var myInit = { method: 'PUT' };
    fetch(myRequest, myInit).then(function(response) {
        return $("#response").text(response);
    });
}
</script>

在python边

@put("/submit/<val>")
def submit(val):
    return "Yay it worked!"