Javascript 单选按钮在嵌套ng重复和筛选中不工作

Javascript 单选按钮在嵌套ng重复和筛选中不工作,javascript,angularjs,filter,radio-button,ng-repeat,Javascript,Angularjs,Filter,Radio Button,Ng Repeat,我必须回答以下问题。我有一个嵌套的ng repeat,带有两个单选按钮,当我选择一个radio按钮时,该值将正确设置为模型。但是,当我筛选到集合中不存在的值时,该值不会设置为视图(模型仍然正确) 复制: 当您选中所有3个单选按钮以显示“读取”,然后在要筛选的输入中键入“x”,现在从输入中删除该值。已选择最后一个收音机,其他收音机未选择 另外,我尝试了ng值而不是值 控制器: vm.list = [{id: 1, name: 'Item1', items: [{id: 1, name: 'Sub

我必须回答以下问题。我有一个嵌套的ng repeat,带有两个单选按钮,当我选择一个radio按钮时,该值将正确设置为模型。但是,当我筛选到集合中不存在的值时,该值不会设置为视图(模型仍然正确)

复制:

当您选中所有3个单选按钮以显示“读取”,然后在要筛选的输入中键入“x”,现在从输入中删除该值。已选择最后一个收音机,其他收音机未选择

另外,我尝试了ng值而不是值

控制器:

vm.list = [{id: 1, name: 'Item1', items: [{id: 1, name: 'SubItem1.1'}, {id: 2, name: 'SubItem1.2'}, {id: 3, name: 'SubItem1.3'}]}]
视图:


    • 阅读 写
更改输入名称 从


这管用!非常感谢。但是为什么这个名称=“{item.id}}{{subitem.id}}}”不起作用?我没有找到原因。我不知道你输入的名字为什么不起作用,我怀疑这是范围问题。每次重复都会创建一个新范围。老实说,它看起来像是角度模型中绑定到我的一个bug。如果你在子项中没有唯一的键,你也可以使用{{item.id+subitem.id}}这很有效
<input type="text" ng-model="search" /> 
<ul>
 <li ng-repeat="item in vm.list">
   <h4 ng-bind="item.name"></h4>
   <ul>
     <li ng-repeat="subitem in item.items | filter:search">
       <h4 ng-bind="subitem.name"></h4>

       <input type="radio" name="{{item.id}}{{subitem.id}}" ng-model="subitem.permission" value="read" /> Read
       <input type="radio" name="{{item.id}}{{subitem.id}}" ng-model="subitem.permission" value="write" /> Write
     </li>
   </ul>
 </li>
name="{{item.id}}{{subitem.id}}"
name="{{subitem.id}}"