0

我有一张桌子。我已经with binding<tr>元素上应用了 a 并且还想对其应用visible属性。

html:

<table>
    <tr data-bind="with: names">
        <td>
            First Name:
            <span data-bind="text: first" />       
        </td>
    </tr> 
</table>

js:

var ViewModel = function() {
     this.names = {
            first:  "John",
            isVisible: false
     };
   };

   ko.applyBindings(new ViewModel());

我想写一些类似<tr data-bind="with: names, visible: isVisible">但淘汰赛不允许这种语法的东西。

隐藏<td>元素 like<td data-bind="visible: isVisible">不是一种选择。

jsFiddle:http: //jsfiddle.net/2Qnv7/43/

有任何想法吗?谢谢!

4

1 回答 1

2

由于您将names仅在 tr 内部拥有上下文,因此您可以name.IsVisible在 tr's中使用data-bind

<table>
    <tr data-bind="with: names, visible: names.isVisible">
        <td>
            First Name:
            <span data-bind="text: first" />       
        </td>
    </tr> 
</table>

小提琴:http: //jsfiddle.net/2Qnv7/44/

于 2013-04-11T09:19:26.967 回答