Как я могу использовать django url внутри тега option в выпадающем меню?

На данный момент я смог использовать цикл for, который перечисляет все соответствующие URL, используя следующее:

<H2> Your Visuals are located here: </H2>
<ul class="main-navigation"> {% for i,j in files%}
    <H3>{{j}}</H3>
    <ul>
    <li><a href="{% url 'visualisation:network_multi_graphs' %}?database={{i}}">Multiple Graphs</a></li>
    <li><a href="{% url 'visualisation:customer_locations' %}?database={{i}}">Customer Locations</a></li>
    <li><a href="{% url 'visualisation:product_quantity' %}?database={{i}}">Product Quantity</a></li>
    <li><a href="{% url 'visualisation:demand_time' %}?database={{i}}">Demand over Time Period</a></li>
    </ul>
    {% endfor %}
</ul>

Я пытался реализовать выпадающее меню для всех ссылок, используя приведенный ниже код с одной ссылкой в качестве теста, но ничего не отображается.

<label>values in z<label>
<select id="the-id">
    {% for i, j in files %}
    <option value=" href="{% url 'visualisation:customer_locations' %}?database={{i}}">Customer Locations</option>
    {% endfor %}
</select>

Кто-нибудь знает, где я ошибаюсь?

Редактирование с новым решением, которое не работает:

<style>
/* Dropdown Button */
.dropbtn {
    background-color: #04AA6D;
    color: white;
    padding: 16px;
    font-size: 16px;
    border: none;
  }
  
  /* The container <div> - needed to position the dropdown content */
  .dropdown {
    position: relative;
    display: inline-block;
  }
  
  /* Dropdown Content (Hidden by Default) */
  .dropdown-content {
    display: none;
    position: absolute;
    background-color: #f1f1f1;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
  }
  
  /* Links inside the dropdown */
  .dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
  }
  
  /* Change color of dropdown links on hover */
  .dropdown-content a:hover {background-color: #ddd;}
  
  /* Show the dropdown menu on hover */
  .dropdown:hover .dropdown-content {display: block;}
  
  /* Change the background color of the dropdown button when the dropdown content is shown */
  .dropdown:hover .dropbtn {background-color: #3e8e41;}
</style>

<div class="dropdown">
    <ul id="buttons"> {% for i,j in network_files %}
    <div class="main-navigation">
        <H2> Your Visuals are located here: </H2>
        <H3>{{j}}</H3>
        <ul>
            <li><a href="{% url 'data_visualisation:network_multi_graphs' %}?database={{i}}">Multiple Graphs</a></li>
            <li><a href="{% url 'data_visualisation:customer_locations' %}?database={{i}}">Customer Locations</a></li>
            <li><a href="{% url 'data_visualisation:product_quantity' %}?database={{i}}">Product Quantity</a></li>
            <li><a href="{% url 'data_visualisation:demand_time' %}?database={{i}}">Demand over Time Period</a></li>
            </ul>
            {% endfor %}
    </div>
</div>

Вам понадобится немного JavaScript, который не является моей сильной стороной. Но что-то вроде этого (полагаясь на, возможно, некачественную память)

<select name="nextview" onchange="javascript:handleNextView(this)"> 
  <option value="{% url ... %}">Multi Graphs</option> 
  <option value="{% url ... %}">Customer Locations</option> 
  <!-- etc ... -->
</select> 
 
<script type="text/javascript"> 
function handleNextView(el){ 
    window.location.assign( el.value ); /* redirect on select */
} 
</script> 
Вернуться на верх