2017-03-09 116 views
2

我目前使用烧瓶和python。我有以下代码为html文件:烧瓶通过点击按钮的值

<body> 
    {% for result in rest_info %} 
    <div class="cotainer"> 
    <button class="btn btn-primary" type="submit" id="{{result2}}">{{result[2]}}</button> 
    </div> 
    {% endfor %} 
    </body> 

我想过渡到一个不同的html基于单击按钮。我写了jQuery脚本这样的事情来获得按钮按下的价值:对您有所帮助

$(document).ready(function() { 
    $(this).click(function() { 
     var stored_value = $(this).id; 
    }); 
}); 

我想知道怎样才能在瓶蟒蛇传递stored_value到视图功能...谢谢! 编辑:按钮的列表是任意长的!

回答

1

要从浏览器获取某些内容到视图函数,您需要提出请求。有很多方法可以做到这一点,比如点击<a>标签,提交<form>或者让jQuery做location = '?value=2';

你也许可以在没有JavaScript的情况下解决这个问题。考虑以下模板:

{% if request.args.blah != '1' %} 
<a href="/?blah=1">Result</a> 
<p>The regular HTML</p> 
{% else %} 
<a href="/">Result</a> 
<p>This HTML is different!</p> 
{% endif %} 
+0

嘿,谢谢你的回复。你能帮我理解如何使用request.args.whateverror?我知道如何使用request.form,但是我查看了args的文档并仍然感到困惑。 –

+0

当一个URL以'?key1 = val1&key2 = val2&key3 = val3'结尾时,称为[查询字符串](https:// en.wikipedia.org/wiki/Query_string)。在这种情况下,'request.args'基本上是一个类似于“{”key1“:”val1“,”key2“:”val2“,”key3“:”val3“}'的字典。在Jinja2(Flask使用的模板系统)中,如果foo'是字典,则'foo.bar'等同于'foo ['bar']'。 –