从动态生成的html表单中获取数据

时间:2014-07-22 19:03:06

标签: python pyramid jinja2

我从数据库中的数据动态生成html页面(主要是因为我在创建数据以存储在数据库中的阶段中检索到的标签)。我从数据库中检索标签和id,然后将它存储在一个返回jinja2的类中,这样我就可以动态生成所有标签和输入框。这是一个片段:

<div class="dataDiv">
            <label class="inputBoxLabels">Device<span style="padding-left: 85px;font-size: 12px;"><a href="http://127.0.0.1:6543/new_device/1">New</a></label>
            <select id="devices" class="inputBoxes" style="height: 25px;">
                {% for key, value in devices.iteritems() %}
                    {% if deviceID == key %}
                        <option value="{{ key }}" selected="selected">{{ value }}</option>
                    {% else %}
                        <option value="{{ key }}">{{ value }}</option>
                    {% endif %}
                {% endfor %}
            </select>
        </div>

另一个例子,这次输入框:

{% if inspection.statusDict|length > 0 %}
    <select class="inputBoxes" id="ins_' + {{ inspection.insID }} + '" style="height: 25px;">
        {% for key, value in inspection.statusDict.iteritems() %}
            <option value="{{key}}">{{value}}</option>
        {% endfor %}
    </select>
{% else %}
   <input type="text" class="inputBoxes" id="ins_' + {{ inspection.insID }} + '">
{% endif %}

这是select列表在填充视觉参考之后的样子: enter image description here

现在问题。我在表单中有所有内容,我不知道如何从每个输入中检索数据,并在收到帖子时选择,因为它全部是动态生成的。

我最初想过使用jquery而不是ajax,但如果可能的话,我想坚持使用表格

1 个答案:

答案 0 :(得分:2)

如果您通过POST提交金字塔视图,我认为我应该能够迭代request.POST以获取提交的内容。

喜欢并检查每个item

for item in request.POST.keys():
  print item + ' - ' + request.POST[item]

当我回到控制台确认时,我必须尝试一下。