如何循环使用jinja2 for循环来创建一个select元素?
问题描述:
说我有一个名为seq的python列表,我想在选择元素中呈现它,我该怎么做?如何循环使用jinja2 for循环来创建一个select元素?
我想:
<select name="Exercise1">
{% for item in seq %}
<option value="{{item}}">{{item}}</option>
{% endfor %}
</select>
没有奏效。
UPDATE: 这里是模板代码:
<!DOCTYPE html>
<html>
<head>
<title>Unit 2 Rot 13</title>
</head>
<body>
<h2>Enter some text to ROT13:</h2>
<form method="post">
<select name="Exercise1">
{% for item in seq %}
<option value="{{item}}">{{item}}</option>
{% endfor %}
</select>
<br>
<input type="submit">
</form>
</body>
</html>
而这里呈现的HTML源代码:
<!DOCTYPE html>
<html>
<head>
<title>Unit 2 Rot 13</title>
</head>
<body>
<h2>Enter some text to ROT13:</h2>
<form method="post">
<select name="Exercise1">
</select>
<br>
<input type="submit">
</form>
</body>
</html>
我不知道为什么元素就会消失,也没有引发错误。
答
你是非常接近我的朋友,你只是错过了一些空间:
你写这样的:
<option value="{{item}}">{{item}}</option>
这就需要看起来像这样:
<option value="{{ item }}">{{ item }}</option>
让我知道如果修复它。祝你好运!
没有这些空间它只是看起来像垃圾蟒蛇和浏览器:)
+0
是的,那工作,谢谢! – camara90100 2013-03-20 02:35:29
+0
我的工作不起作用(当我用字符串替换变量时它工作正常) – fanny 2016-12-11 21:47:06
它以什么方式“不工作”?您的模板看起来很好(假设所有内容都已正确转义)。 – Cameron 2013-02-20 22:56:34
好吧,select元素不会出现在呈现的html中。 – camara90100 2013-02-20 23:16:57
你能举一个'seq'包含的例子吗?如果你把一个虚拟链接放在选择上面,另一个在右边,他们会显示出来吗? – Cameron 2013-02-21 00:21:46