在 django 模板中单击按钮后如何填充表格?

Posted

技术标签:

【中文标题】在 django 模板中单击按钮后如何填充表格?【英文标题】:How to populate table after button click in django template? 【发布时间】:2020-06-21 01:14:25 【问题描述】:

1) 我想使用 DTL 从字典的输入字段中插入值。 这是加载页面上的代码的sn-p,使表中的该代码标签不可见(可能是因为if条件变为False),但在从字典提交数据后,在同一标签中显示插入的值。

我怎样才能让它工作并且在页面加载时保持所有 td 标签可见?

2) 另外,由于我的 data.items 有 6 个键,所以它迭代了 6 次,我只想获得一次。

我知道我不是很清楚,但很抱歉我不能发布整个代码,因为它太大而且保密。 请帮忙,我是 django 的新手。谢谢。

....
...
..
      % for key, value in data.items %
      % for key2,value2 in value.items %
      <tr class="info">
        <td>1</td>

        <td>Cholesterol -HDL</td>
        <td>
        % if value2.test_name == "Cholesterol -HDL" %
        <div class="form-group">
          <input type="text" class="form-control" name="cholesterol_hdl_result" value=" value2.results ">
        </div>
      </td>
        <td><div class="form-group">
          <input type="text" class="form-control" name="cholesterol_hdl_uom" value=" value2.units ">
        </div></td>
        <td><div class="form-group">
          <input type="text" class="form-control" value="40.00" name="cholesterol_hdl_lr">
        </div></td>
        <td><div class="form-group">
          <input type="text" class="form-control" value="60.00" name="cholesterol_hdl_hr">
        </div></td>
        % endif %
      </tr>
        % endfor %

% endfor %
..
...
....

【问题讨论】:

这意味着,在页面加载时你想得到一个空表,当你在页面加载时传递 dict 你想填充那个表,对吧? 是的,没错! :) 【参考方案1】:

因此,当字典为空时,您必须检查 ifelse 条件并在 else 块中写入 &lt;td&gt; 标记,如下所示...

% if data %

    ......
    ......
    % for key, value in data.items %
          % for key2,value2 in value.items %
              ....
              ....

          % endfor %
    % endfor %

% else %

    # write your default <td> tag here which is shown when there is empty data dictionary

% endif %

只有在你必须使用 django 模板的forloop.first 时才进行 for 循环,如下所示...

% for key, value in data.items %
    % if forloop.first %
        % for key2,value2 in value.items %
            ....
            ....

        % endfor %
    % endif %  
% endfor %

【讨论】:

永远,快乐编码:) 这里再查询一个,如果data.items不包含迭代前if条件中检查的项目,它也没有提供输入框。但是,我想要输入框原样。谢谢。 根据&lt;td&gt; 标签,您可以在else 块中写入&lt;input&gt; 标签。但是你必须在那里维护''标签cz的value属性,你将没有任何字典来填充value字段。所以,你必须将值设为空,可能是。 嘿,@MK 帕特尔!!你能回答我这个问题吗? ***.com/questions/60734026/…

以上是关于在 django 模板中单击按钮后如何填充表格?的主要内容,如果未能解决你的问题,请参考以下文章

如何让下拉选择从 Django 模型中填充模板中的 DataTables 表?

在 AJAX 请求后填充 Django 表单

自动导出访问表数据以填充模板 Excel 工作表

Django视图绕过渲染请求

如何通过使用 onClick() 函数单击按钮来填充 Javascript 中的表格?

单击按钮后为我的表选择一个类? (HTML 表格)