2017-06-16 134 views
1

A jsfiddle解释了这个问题。我想使用knockout:foreach为表格生成列标题列表(<th>标记)。但是,如果您检查DOM,则可以看到在每个<th>周围插入了一个<tr>,这导致列标题全部堆叠在最左列上方,而不是在对应表格单元格上方显示一个列标题。淘汰赛:用表列插入额外的TR

我想也许containerless syntax会成为我的朋友,但在这里我试着在another jsfiddle,它不工作;如果你打开javascript控制台,你会看到关闭foreach循环的评论无法找到(还有其他关于这个特定问题的SO问题,但他们的解决方案对我来说不起作用)。

回答

2

您需要将TH元素封装在单个TR中,而不是让浏览器猜测放在哪里。

<thead> 
    <tr data-bind="foreach:columns"> 
    <th data-bind="text: $data.field_name"></th> 
    </tr> 
</thead>