Как получить значения из многих раскрывающихся списков (то есть они имеют один идентификатор выбора) сразу, используя Flask и Html? - PullRequest
0 голосов
/ 23 марта 2020

Я использовал для l oop, чтобы создать несколько выпадающих списков. Мне нужно, чтобы значения, выбранные в каждом из этих раскрывающихся списков, обновлялись в соответствующих строках в базе данных при нажатии кнопки «Отправить». Поскольку раскрывающиеся списки создаются с использованием для l oop, у каждого из них есть общий идентификатор выбора, однако кнопка отправки нажимается только один раз после выбора значения во всех раскрывающихся списках.

Код Html ниже

<!DOCTYPE html>

<head>
    <link rel="stylesheet" href="/static/content/index.css" />
    <meta name="viewport" content="width = device-width, initial-scale= 1.0" />
    <script src="https://kit.fontawesome.com/18264bfb6e.js" crossorigin="anonymous"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <script src="scripts/admin.js"></script>
    <title>Admin Page</title>
</head>

<body>
    <div class="side-menu">
        <h4 class="workamp-text">WORKAMP</h4>
        <div class="avatar">
            <img src="src/admin.jpg.png" alt="Admin Profile Image" class="icon">
            <h4 class="avatar-text">ADMIN</h4>
        </div>
        <div class="menu-select">
            <h4 class="menu-opt" id="selected">TASKS TODAY</h4>
            <h4 class="menu-opt">UPCOMING</h4>
        </div>
    </div>
    <h3 class="header" id="checklist-head">Washroom Checklist</h3>
    <div class="cards-list">
        <form method="POST" action="{{url_for('okaydrop')}}">
            {% for t in washroom_list %}
            <div class="card" id="check-list">
                <div class="check-div">
                    <h5 class="card-title" id="check-title">{{t['Item']}}</h5>
                </div>
                <select multiple id ="okaydrop" name ="okaydrop_list" class="checklist">
                    <option value="{{t['_id']}}.Okay">Okay</option>
                    <option value="{{t['_id']}}.NotOkay">Not Okay</option>
                </select>
            </div>
            {% endfor %}
            <div class="buttons">
                <button class="button" type="submit">Submit</button>
            </div>
        </form>
    </div>
    </div>

</body>

</html>

Код python - flask ниже

@app.route("/okaydrop", methods=['POST'])    
def okaydrop():    
    Status = request.form.get("okaydrop")

    #task=washroom_checklist.find({"_id":ObjectId(id)})    
    #if(task[0]["Status"]=="Not Okay"):    
    #    washroom_checklist.update({"_id":ObjectId(id)}, {"$set": {"done":"no"}})    
    #elif(task[0]["Status"]=="Okay"):   
    #    washroom_checklist.update({"_id":ObjectId(id)}, {"$set": {"done":"yes"}})    
    redir=redirect_url()        
    return redirect(redir)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...