我想我可能在Pythonanywhere上错误地使用了request.form。我有几个下拉列表,在html中如下所示:
<span class="text" style="margin-left: 4px;">{{form.q1Text}}</span><br>
<select name="q1a" class="question">
{% for p in form.q1Opts %}
<option value={{p}}>{{p}}</option>
{% endfor %}
</select>我以一种形式传递,看起来是这样的:
class questionForm(Form):
q1Text = "This is a question?"
q1Opts = ["Option A","Option B","Option C","Option D"]一旦提交了表单,我希望能够访问被选中的人的选项,因此我执行以下操作:
answer = request.form["q1a"]在这个特殊的例子中,我觉得我应该从表单中得到“选项A”。问题是我没有。我回到了“选择”。不管我作为选项输入了什么,这都是正确的;只返回第一个单词(用户选择的那个词)。我已经解决这个问题有一段时间了,但我希望有人知道如何解决这个问题,让我把整根绳子拿回来。
哦,我觉得我应该指出,这些选项在网页上确实显示得很好。因此,用户看到了“选项A”、“选项B”等等,但是当我试图读取他们的响应时,我只得到了第一个单词。
发布于 2015-07-03 10:32:44
看起来您缺少了value=属性周围的引号吗?
它应该是:
<option value="{{p}}">{{p}}</option>https://stackoverflow.com/questions/31175556
复制相似问题