【发布时间】:2016-07-13 18:25:03
【问题描述】:
我有以下 HTML,在 ng-repeat 中有一个复选框
<table>
<tr ng-repeat="address in contactInfo.Addresses">
<td>{{address.DisplayType}}</td>
<td>{{address.AddressLine1}}</td>
<td>{{address.AddressLine2}}</td>
<td>{{address.City}}</td>
<td>{{address.State}}</td>
<td>{{address.Zip}}</td>
<td>
<input type="checkbox" ng-model="address.ClientDefault" ng-checked="{{address.ClientDefault}}" ng-click="updateAddressSelection($index, contactInfo.Addresses)" />
</td>
<td><i class="fa fa-envelope-square"></i></td>
</tr>
</table>
当我运行 updateAddressSelection 函数时
$scope.updateAddressSelection = function(position, address) {
angular.forEach(address, function(address, index) {
if (position != index) {
address.ClientDefault = false;
}
});
};
它不会从默认使用 ng-checked 标记的原始复选框中删除该复选框。正在重复的 json 对象如下所示。
{
"ID": 6,
"DisplayType": "Other",
"AddressLine1": "123 test st",
"AddressLine2": "",
"City": "madeupville",
"State": "MO",
"Zip": "63123",
"AddressType": 3,
"Linked": 0,
"ClientDefault": "true",
"HouseholdDefault": 0
}
我怎样才能让最初标记的复选框在点击时也被删除。除了没有清除默认复选框之外,这一切正常。
【问题讨论】:
-
也许我遗漏了一个细节,但如果没有,您为什么要使用复选框构建单选按钮?
-
@Noppey 请求该站点的业务区域希望它们是复选框,或者至少看起来像寻找 CSS 选项的复选框
标签: javascript angularjs checkbox