此代码抛出错误(在Chrome中):“找不到匹配的结束注释标记: ko foreach: MyPlans":
<table>
<!-- ko foreach: MyPlans -->
<tr>
<td>Test</td>
</tr>
<!-- /ko -->
</table>
如果我使用列表,一切都会正常工作:
<ul>
<!-- ko foreach: MyPlans -->
<li>
Test
</li>
<!-- /ko -->
</ul>
我想用无容器的餐桌。我是不是做错了什么?这是个bug吗?
发布于 2011-11-14 08:31:56
这与浏览器自动插入tbody
标记的事实有关,这会在注释中造成不匹配。渲染的输出将如下所示:
<table>
<!-- ko foreach: MyPlans -->
<tbody>
<tr>
<td>Test</td>
</tr>
<!-- /ko -->
</tbody>
</table>
Steve确实花了一些精力来纠正KO中不匹配的标记,但对您来说最简单的事情是自己添加tbody
或添加tbody
并将您的绑定放在它上面。
<table>
<tbody data-bind="foreach: MyPlans">
<tr>
<td>Test</td>
</tr>
</tbody>
</table>
如果需要,一个表可以有多个tbody
标记。
https://stackoverflow.com/questions/8115896
复制相似问题