淘汰如何获得$ parent的$ parent

时间:2015-06-02 18:58:10

标签: jquery knockout.js

<div id="root" data-bind="with: $data.Building">
    <div data-bind="foreach: $data.Offices">
        <div data-bind="foreach: $data.desks">
            <div data-bind="foreach: $data.Legs">
                <button class="btnDestroyDeskLeg"> Destroy</button>
            </div>
        </div>
    </div>
</div>
<script>
        $("#root").on('click', '.btnDestroyDeskLeg', function ()
        {
            var context = ko.contextFor(this),
                Office = ** ? **,
                Desk = context.$parent,
                Leg = context.$data;
        });
</script>

如何获得$ Parent的$ Parent? 换句话说,什么应该取代&#34; **? **&#34;上任?

1 个答案:

答案 0 :(得分:5)

您可以使用knockout documentation中描述的$parents数组。

要获取父上下文,您可以使用

$parents[0]

要获得祖父母背景,您可以使用

$parents[1]

所以在你的情况下你可以使用

Office = context.$parents[1]