formArray中的单选按钮

时间:2016-08-09 13:44:14

标签: angular

我正在处理一个formArrayName的表单,我希望在其中使用单选按钮。问题是所有这些单选按钮都具有相同的名称,所以当我点击一个按钮时,所有其他单选按钮都会关闭。

如果我给单选按钮指定一个带索引(name[i])的名称,我会收到错误消息:

platform-browser.umd.js:1900 ORIGINAL EXCEPTION: If you define both a name and a formControlName attribute on your radio button, their values must match. Ex: <input type="radio" formControlName="food" name="food">

我无法找到解决方法。我无法为init函数提供索引,因为数组的索引可能会发生变化。以下是我的代码示例:

编辑:制作了一个Plunker示例:http://plnkr.co/edit/o2ZxAFsuhD0F7OKevqei?p=preview

有人能帮助我吗?

3 个答案:

答案 0 :(得分:2)

你需要让angular设置输入的name属性:

<input type="radio" [attr.name]="'sex' + i" value="male"> male
<input type="radio" [attr.name]="'sex' + i" value="female"> female

答案 1 :(得分:1)

离开名称属性为我解决了问题。

答案 2 :(得分:-1)

如果不使用多个form元素,在技术上似乎是不可能的。