使用Chrome进行调试时,我可以看到CoverPrices有9个元素。 foreach循环实际上运行良好,表格看起来正确,第一个跨度正确绑定到Item1。
但是,if绑定不起作用,并且显示两个图像。然而,Item2中的所有元素都具有真实值,因此只显示第一个图像。
<!-- ko foreach: CoverPrices -->
<tr>
<td>
<span data-bind="text: Item1"></span>
</td>
<!-- ko foreach: Item2 -->
<td>
<img src="~/Images/yes.png" alt="oui" data-bind="if: $data" />
<img src="~/Images/no.png" alt="non" data-bind="ifnot: $data" />
</td>
<!-- /ko -->
</tr>
<!-- /ko -->
我的装订有问题吗?
答案 0 :(得分:26)
if-binding
不会影响整个元素,但会影响内容。由于img
元素没有内容,因此绑定无关紧要。
这将有效,span
作为容器元素:
<span data-bind="if: $data"><img src="~/Images/yes.png" alt="oui" /></span>
<span data-bind="ifnot: $data"><img src="~/Images/no.png" alt="non" /></span>
如果您不想要其他元素,还有一个container-less syntax:
<!-- ko if: $data -->
<img src="~/Images/yes.png" alt="oui" />
<!-- /ko -->
<!-- ko ifnot: $data -->
<img src="~/Images/no.png" alt="non" />
<!-- /ko -->
答案 1 :(得分:0)
图像未绑定到DOM,但图像正在加载。您可以签入网络流量。如果使用bind,则不应加载