首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从MySQL数据库Python中填充下拉列表

从MySQL数据库Python中填充下拉列表
EN

Stack Overflow用户
提问于 2017-04-17 04:12:05
回答 1查看 2.3K关注 0票数 0

我有一个带有MySQL的Flask后端,需要从表中提取值,以便在下拉列表中显示。

我有一张单值的桌子,比如香蕉,苹果,橘子等等。

在我的html代码中,如果用户选择另一个下拉列表(这是硬编码的),则会显示该选项,因此代码如下所示:

代码语言:javascript
运行
复制
$(function() {
        $("#inputType").change(function() {
            var myform = "<div id=\"newForm\">"
            +"<label for=\"inputFruit\">Fruit:</label>"
            +"<select class=\"form-control\" id=\"inputFruit\" required>"
            +"<option></option>"
            +"</select>"
            if ($("#inputType").val() == "fruits") {
                $(myform).insertBefore("#btnSignUp");
            } else {
                $("#newForm").remove();
            }

在我的烧瓶应用程序中:

代码语言:javascript
运行
复制
@app.route('/getFruits') # gets my fruits as a list and returns

在哪里添加代码,以便将从/getFruits获得的值放入HTML中的选项中?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-17 04:35:51

您可以将上下文数据(成果列表)传递到模板的javascript代码中,使用JSON将满足您的要求:

您的观点:

代码语言:javascript
运行
复制
import json

@app.route('/getFruits')
def my_view():
    data = ['Banana', 'Apple', 'Orange', 'Pear', 'Watermalon'] # you can get list from your DB instead
    return render_template('yourtemplate.html', data=json.dumps(data))

您的模板:

代码语言:javascript
运行
复制
$(function() {
        $("#inputType").change(function() {
            var myform = "<div id=\"newForm\">"
            +"<label for=\"inputFruit\">Fruit:</label>"
            +"<select class=\"form-control\" id=\"inputFruit\" required>"
            {% for item in data %}
            +"<option>{{ item|safe }}</option>"
            {% endfor %}
            +"</select>"
            if ($("#inputType").val() == "fruits") {
                $(myform).insertBefore("#btnSignUp");
            } else {
                $("#newForm").remove();
            }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43445027

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档