40

我试图以适当的方式减少痛苦,但我不知道如何处理 ng-model 并将其绑定到选定的列表等,而且我需要稍后填充该列表并保留选定的对象在里面。

categories = [ { "name": "Sport", "id": "50d5ad" } , {"name": "General", "id": "678ffr" } ]

    <span ng-repeat="category in categories">
      <label class="checkbox" for="{{category.id}}">
        <input type="checkbox" value="{{category.id}}" ng-model="??" ng-click="??" name="group" id="{{category.id}}" />
        {{category.name}}
      </label>
    </span>

每次填充列表时,我都必须覆盖类别,因为它将从服务器中提取出来。

所以我想我需要有数组,第二个将保存选定的对象?

如果我是对的,我该如何预选复选框?

我是否需要 ng-click 才能调用自定义函数将所选对象存储在另一个数组中?

我需要在复选框中使用 ng-model 吗?为什么?

少痛点的正确方法是什么?

4

1 回答 1

70

每次填充列表时,我都必须覆盖类别,因为它将被拉出表单服务器。所以我问我需要有数组,而第二个将保存选定的对象?

是的,因为它是一个列表,您可以/应该使用数组。有关所选项目/对象的信息应存储在您的范围模型中(示例如下)。

如果我是对的,我如何预先选择复选框?

将所选选项/复选框的 ID 保存在您的模型上,然后让其他ng-model人完成剩下的工作。

我是否需要 ng-click 才能调用自定义函数将所选对象存储在另一个数组中?

不,你不需要它,ng-model就足够了。

我需要 ng-model 复选框吗?又是为了什么?

Yes, you need it. The ng-model is responsible for storing the selected options on your model and for making the ('pre-')selection automatic.

jsfiddle http://jsfiddle.net/bmleite/PQvQ2/

于 2013-02-12T14:46:22.793 回答