【发布时间】:2017-11-06 21:05:04
【问题描述】:
我正在制作一个动态填写的表格。动态填写内容时,我可以得到空对象。当我得到空对象时,HTML 表没有正确对齐。例如我想创建一个如下表:
Header1 Header2 Header3 Header4
Content12 Content14
Content21 Content23 Content24
Content31 Content32 Content34
但目前,表格如下:
Header1 Header2 Header3 Header4
Content12 Content14
Content21 Content23 Content24
Content31 Content32 Content34
我看过的其他解决方案需要在存在空对象时插入   字符。如果我遵循这种方法,那么对于每一列,我必须检查给定的值是否为空,如果为空则插入   字符。我认为必须有一些其他有效的方法来做到这一点。有人可以帮我处理这个案子吗?
P.S:这是一个 Ruby on Rails 项目,我使用 HAML 和 Bootstrap 来创建视图。此外,我的内容行包含一些额外的按钮,即标题行包含的列少于内容行
下面是我用来创建表格的代码。
%table.table.table-hover.table-responsive
%thead
%tr
%th ID
%th Header1
%th Header2
%th Header3
%th Header4
%tbody
-@given_objects.each do |obj|
%tr
%td= obj.id
%td= obj.content1
%td= obj.content2
%td= obj.content3
%td= obj.content4
%td= link_to 'action1', action1_path(obj), class: 'btn btn-primary'
%td= link_to 'action2', action2_path(obj), class: 'btn btn-primary'
%td= link_to 'action3', action3_path(obj), class: 'btn btn-primary'
【问题讨论】:
-
你能显示
view代码吗?因为只要您有正确数量的<td>s,即使这些<td>s 是空的,HTML<table>也不应该像那样压缩。看到这个DEMO -
不看代码就很难提供解决方案stackoverflow.com/help/mcve
-
@Jay-ArPolidario 我已经编辑了问题并提供了我正在使用的代码结构。
标签: html css ruby-on-rails haml bootstrap-4