将 HTML 表格标签推送到数据下方 - Rails

Posted

技术标签:

【中文标题】将 HTML 表格标签推送到数据下方 - Rails【英文标题】:HTML Table Tags Pushed Below Data - Rails 【发布时间】:2015-11-16 01:51:30 【问题描述】:

我认为这将是一项简单的任务:将 <table></table> 标记放在遍历数据的枚举 each 方法周围。代码如下:

<div id="results-panel">
    <table>
        <% @artwork_q.each_with_index do |art, index| %>
            <div class="a-result" id="<%= index %>">
                <%= art.artist.fullname %>
            </div>
        <% end %>
    </table>
</div>

问题&lt;table&gt;&lt;/table&gt;的开始和结束标记都在所有数据都被列出之后结束,而不是像我显然认为的那样围绕数据:

我确实尝试过使用正确的&lt;tr&gt;&lt;td&gt; 标签,但它仍然发生了。这个版本是为了简单和找到真正的问题。非常感谢任何帮助。谢谢。

【问题讨论】:

【参考方案1】:

您的表格缺少TRTD 标签...这就是浏览器将表格标签呈现在您的div 之外的原因。

以下应该解决它:

<div id="results-panel">
    <table>
        <tbody>
        <% @artwork_q.each_with_index do |art, index| %>
            <tr><td>
            <div class="a-result" id="<%= index %>">
                <%= art.artist.fullname %>
            </div>
            </td></tr> 
        <% end %>
        </tbody>
    </table>
</div>

【讨论】:

谢谢。所以是的,但我的问题是我想在条件 ruby​​ 语句中包围 &lt;tr&gt;,以便每 4 次左右才创建一行。即使我将 &lt;tr&gt; 放在 ruby​​ 语句中:&lt;%= "&lt;tr&gt;" %&gt;,(更不用说条件)它也会将表格标签推到底部。 你可以在&lt;%= "&lt;tr&gt;" if index % 4 == 0 %&gt;这样的条件下使用ruby %(模)运算符(记得关闭它)&lt;%= "&lt;/tr&gt;" if index % 4 == 0 %&gt; 是的,我正在使用它,你是对的。我也认为我的问题是,我没有包含&lt;td&gt; 元素,因为我只是在“测试”,即使我需要它们工作。感谢您的帮助。

以上是关于将 HTML 表格标签推送到数据下方 - Rails的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Json 数据推送到 UITableView 中的标签?

将视图推送到当前根视图下方的堆栈中

将json数据推送到angular js中的现有数组

如何将文本字段中的数据推送到另一个 VC 中的标签

Docker 将镜像推送到远程仓库

如何使用ajax将更新推送到表单中