在html中的多个模板标签之间引用django变量



为清晰编辑:

在我的选择下拉列表中有一个饮料列表。根据所选择的内容,我希望网页呈现drink所具有的成分(我可以从标记函数drink_joins中获得)。

第一个问题是下拉菜单的值被设置为第一个值,即使用户选择了一个不同的值。

<select>
{% for drink in drinks %}
<option id="dropdown" value="{{drink.drink_name}}">{{drink.drink_name}}</option>
{% endfor %}
</select>

即这里function myFunc(){x = document.getElementById('dropdown').value}只会得到drinks中的第一个元素,无论在下拉菜单中选择什么。

第二个问题是,一旦这是固定的,我怎么能传递该值到我的标签,没有它在for循环?例如,{{'Margarita'|drink_joins}}将返回正确的列表,但我不知道如何在那里放置一个变量。

<select>
{% for drink in drinks %}
<option id="dropdown" value="{{drink.drink_name}}">{{drink.drink_name}}</option>
{% endfor %}
</select> 
<p> {{ [needs string of dropdown value] | drink_joins }}</p>

问题

id="dropdown"在每个option中设置,它应该是select的id。<select id="dropdown">

你不能动态地改变模板标签的值,当js在客户端时,这些是在服务器端处理的。

我建议使用ajax,用过滤器的逻辑创建视图,用select的值发送请求。

相关内容

  • 没有找到相关文章

最新更新