在ng-repeat中设置ng-model不起作用

时间:2015-06-01 07:19:17

标签: javascript angularjs

我有一个问题列表,每个问题都有一些复选框选项。我使用ng-repeat列出问题,另一个ng-repeat列出选项。那么我该如何设置答案选项的ng-model复选框以获取所有问题的所有选定选项。

我尝试像ng-model那样设置answers[qst.id][ans.id],但是它的返回错误TypeError: Cannot set property '*' of undefined

<div ng-repeat="qst in questions">
    <div>{{qst.question}}</div>
    <div>
        <ul>
            <li ng-repeat="ans in answers">
                <span>
                    <input type="checkbox" ng-model="answers[qst.id][ans.id]">
                </span>
                <span>
                    {{ans.ansOption}}
                </span>
            </li>
        </ul>
    </div>
</div>

这样做的最佳方式是什么?

1 个答案:

答案 0 :(得分:0)

不知道你的答案的结构,但它可能是对象(键值对),所以我将你的复选框绑定到答案中的键checked

<div ng-repeat="qst in questions">
    <div>{{qst.question}}</div>
    <div>
        <ul>
            <li ng-repeat="ans in answers[qst.id]"><span><input type="checkbox" ng-model="ans.checked"></span><span>{{ans.ansOption}}</span></li>
        </ul>
    </div>
</div>