AngularJS复选框从数据透视表中检查?

时间:2015-08-18 20:27:07

标签: angularjs checklist-model

我使用插件创建了以下内容:http://vitalets.github.io/checklist-model/

<section ng-repeat="owner in lord.owners">

    <form ng-submit="foobar(owner)" name="update_location_form">

    <input type="text" ng-model="owner.name">

    <ul>
        <li ng-repeat="sheep in sheeps">
            <input checklist-model="owner.sheeps" checklist-value="sheep.id" type="checkbox"> 
            <label class="checkbox">{{ sheep.name }}</label>
        </li>
    </ul>    

    <button type="submit">Submit</button>    

    </form>

</section>    

列表中显示了所有的绵羊。保存到我的数据透视表(manytomany-relation)也可以。

但是当我刷新页面时,所有检查当然都消失了。我怎样才能访问它们?

它们存储在:

{
    id: 1,
    name: "Obama",
    farms: [
        {
            id: 10,
            name: "VirtualFarm",
            sheeps: [
                {
                    id: 1,
                    name: "Foo",
                },
                {
                    id: 2,
                    name: "Bar",
                },
                {
                    id: 10,
                    name: "Cow",
                },
                {
                    id: 13,
                    name: "Hey",
                },
            ]
        }
    ]
}

但我现在真的知道如何检查数据透视表中默认的复选框。

有人?

1 个答案:

答案 0 :(得分:0)

checklist-model指令会根据checklist-model的值自动检查相应的复选框。您不必做任何其他事情,您的代码看起来很好。但是......

首先,我怀疑owner in lord.owners必须类似于owner in x.farms,其中x是您粘贴在上面的对象。

这是在客户端,即使您选中此框,仍需要将它们保存在服务器端。刷新时,服务器端未保留的每个数据都将丢失。