具有ng-repeat和单选按钮的Angular JS表

Mit*_*hVz 5 html-table radio-button angularjs angularjs-ng-repeat

我正在尝试使用ng-repeat创建一个表,每个行的开头都有一个单选按钮选择器.该表如下所示:

<table>
     <tbody>  
         <tr ng-repeat="model in modelList">
              <td>
                 <input type="radio" ng-model="model.select"></input>
              </td>
             <td>{{ model.NDPName }}</td>
             <td>{{ model.OEM }}</td>
             <td>{{ model.version }}</td>
             <td>{{ model.dateAdded }}</td>
             <td>{{ model.validUntil }}</td>
         </tr>
     </tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

ng-repeat来自一个看似如下的modelList:

    $scope.modelList =
    [
        {
            select: false,
            NDPName: "NDP1",
            OEM: "CHOAM Inc.",
            version: "01",
            dateAdded: "Jan 1, 2013",
            validUntil: "Jan 1, 2014",
        },
        {
            select: false,
            NDPName: "NDP2",
            OEM: "Tyrell Corp.",
            version: "01",
            dateAdded: "Jan 1, 2014",
            validUntil: "Jan 1, 2015",
        },
        {
            select: false,
            NDPName: "NDP3",
            OEM: "Stark Industries",
            version: "01",
            dateAdded: "Jan 1, 2015",
            validUntil: "Jan 1, 2016",
        },
        {
            select: false,
            NDPName: "NDP4",
            OEM: "Monsters Inc.",
            version: "01",
            dateAdded: "Jan 1, 2016",
            validUntil: "Jan 1, 2017",
        },
        {
            select: false,
            NDPName: "NDP5",
            OEM: "ACME Corp",
            version: "01",
            dateAdded: "Jan 1, 2017",
            validUntil: "Jan 1, 2018",
        }
    ];
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是单选按钮的行为不像单选按钮.它们各自位于单独的范围内,因此将允许选择表中的多行.我怎样才能解决这个问题?

Kab*_*bb5 14

您需要为name单选按钮设置属性,以便将它们组合在一起.

<input type="radio" name="groupName" ng-model="model.select" />
Run Code Online (Sandbox Code Playgroud)

在这里阅读名称属性

  • 最简单的修复是最容易忽视的.很高兴有帮助:) (2认同)