问题描述
我正在使用KnockoutJS绑定到WINJS App中的表,当我第一次运行My App时,它在正确绑定的情况下运行良好。 这是Row.innetHTML =
<tbody id="repeater" data-bind="foreach: labsTableArrayKo"
<tr class="tr">
<td><span data-bind="text: VlabName"></span></td>
<td><span data-bind="text: VMType"></span></td>
<td>
<div data-bind="if: VMType == 'Virtual Machine'">
<span data-bind="text: vmStatus"></span>
</div>
<div data-bind="if: VMType == 'RemoteApp'">
<span data-bind="text: 'Ready'"></span>
</div>
</td>
</tr>
但是当我改变绑定中使用的数组时,一些HTML代码被删除(我不知道怎么做!!) Row.InnetHTML是=
<tr class="tr">
<td><span data-bind="text:VlabName"></span></td>
<td><span data-bind="text: VMType"></span></td>
<td>
<div data-bind="if: VMType == 'Virtual Machine'"></div>
<div data-bind="if: VMType == 'RemoteApp'"></div>
</td>
</tr>
这是我通过Javascript绑定到HTML代码的方式:
var viewModel = {labsTableArrayKo: labs_Table_Array};
ko.cleanNode(document.getElementById("repeater"));
var q = document.getElementById("repeater").innerHTML;
ko.applyBindings(viewModel, document.getElementById("repeater"));
那么问题是什么??
1楼
实际上我用(visible)替换了(If),并且它可以与我一起使用,我不知道为什么,但是它可以使用。