如何在AngularJS中使用ng-model获取Checkbox值(由用户检查)

时间:2013-09-03 14:53:38

标签: javascript angularjs angularjs-scope

在尝试实现Checkbox功能时,我无法获取用户选择的复选框。这是怎么做到的? 以下是我的HTML代码段:

<td>
                <table border="0"><th>Tier</th>
                <tr ng-repeat="item in tiertype">             
                    <td>
                    <label class="checkbox" for="{{item.id}}">
                    <input type="checkbox" ng-model="selection.ids[item.id]" name="tier_class" ng-checked="item.checked" id="{{item.id}}"/>{{item.name}}
                    </label>
                    </td></tr></table>
            </td>

以下是我的javascript片段:

$scope.tiertype = [ 
                       { id: 1, name: "All", checked: true}, 
                       { id: 2, name: "Standard", checked: false },
                       { id: 3, name: "Unreserved", checked: false },
                       { id: 3, name: "Reserved", checked: false },
                       { id: 4, name: "General", checked: false }
                       ];

我没有使用“复选框值= {{selection.ids}}”获得正确的值。此外,在检查任何checbox时,所有都被检查或checbox的id为:1(默认值)。 对我来说似乎很奇怪,无法弄明白。我在哪里出错,因为我在AngularJS上没有多少经验。

1 个答案:

答案 0 :(得分:0)

只需将复选框ng-model设置为检查的布尔值即可。 IE:ng-model =“item.checked”