如何使用angularjs从表中获取行数据

时间:2014-03-14 07:37:50

标签: angularjs

我是angularjs的新手。我正面临一个问题。我有一个带一个单选按钮的桌子。当用户选择任何单选按钮并单击提交按钮时,我需要显示所选行的详细信息。

Html代码:

<table>
    <thead>
        <tr>
            <th>Select</th> 
            <th>First Name</th> 
            <th>Last Name</th> 
            <th>Unique Reference ID</th> 
            <th>Country</th> 
            <th>Branch</th> 
            <th>Card No</th> 
       </tr>
    </thead>

    <tr ng-repeat="d in Employees">
        <td><input type="radio"></td>
        <td>{{d.fname}}</td>
        <td>{{d.lname}}</td>
        <td>{{d.uniqueid}}</td>
        <td>{{d.country.name}}</td>
        <td> {{d.branch.name}}</td>
        <td>{{d.cardno}}</td> 
    </tr>
</table>

<table>
    <tr>
        <td><input type="button" value="Edit" ng-click="Edit()"></td>
    </tr>
</table>

控制器代码:

$scope.Edit=function()
{
    //need id of selected row ?
};

2 个答案:

答案 0 :(得分:6)

这样的事情:

<input type="radio" ng-click="editData.employee = d">

控制器:

$scope.editData = {};

$scope.Edit = function() {
  var id = $scope.editData.employee.id;
};

我刚回答了另一个问题,即它如何影响您的代码ng-repeat为每个列表项创建一个新范围,这就是为什么您需要editData对象才能工作的原因。它可以帮助您理解为什么需要它:Angular replace data from ng-repeat item

答案 1 :(得分:0)

您需要在收音机输入中使用ng-modelng-value属性;见http://docs.angularjs.org/api/ng/input/input%5Bradio%5D

您还希望使用至少一些理智的格式来格式化您的HTML。