在AngularJS中如何在2个复选框之间切换并仅获取1个值

时间:2014-07-07 06:41:49

标签: html angularjs checkbox input

在AngularJS中;如何在两个复选框之间切换并仅获取一个值

<td >
  <input type="checkbox" value="{{person.person_ID}}">{{person.home_address}}
</td>
<td >
  <input type="checkbox" value="{{person.person_ID}}">{{person.office_address}}
</td>

根据要求,我有人员名单,每个人都有两个人 列home_addressoffice_address,我想在地址之间切换,只获得1 值如果检查person.home_address而不是office_address应该取消选中,反之亦然,我想只得到一个地址,如"person.person_ID":home_address

1 个答案:

答案 0 :(得分:1)

您可以使用以下html将ng-model绑定到person实例中的值。 (A fiddle is available

<input type="checkbox"
       ng-model="person.option"
       value="{{person.person_ID}}"
       ng-true-value="'home'"
       ng-false-value="'none'">{{person.home_address}}
<input type="checkbox"
       ng-model="person.option"
       value="{{person.person_ID}}"
       ng-true-value="'office'"
       ng-false-value="'none'">{{person.office_address}}

此处复选框绑定到相同的变量person.option,该变量根据ng-true-value和ng-false-value中表达式的复选框值设置。通过将这些值设置为除另一个值之外的某个值,我们可以选择无,也可以只选择一个。

在您的控制器中,您只需检查person.option即可获得选中的复选框。

if (person.option === 'home') { }
else if (person.option === 'office') { }