需要获取单选按钮的值,通过HTML和angularJS传递给后台,前台显示的数据是一个列表

Need to get value of the radio button and pass it to the backend using HTML and angularJS,and the data displayed in the frontend is a list

//这是我的 HTML 代码,其中我从后端返回一个列表。

<ul> <li ng-repeat=" opt in bcfList1 track by $index" > <input type="radio" name="buildid" id="buildid" ng-model = $parent.selected ng-value="bcfList1" required> {{ opt }} </li> </ul>

//这是我的controller.js程序

$scope.getDetails =function(data){
        var id=data.id;
        $('#addNode3').modal('show');
        UpgradeService.getDataById(id).then(function(data){
            if(data!=null){
               $scope.List1=data.BUILDNUMBER;
            }
        });
    }

我需要获取将列在单选按钮前面的字符串值。所以一旦我点击单选按钮,它应该将该值发送到 controller.js 通过使用 ng-model 我需要一个解决方案。 帮帮我!!

如果我没理解错的话,您需要收集在控制器中点击了哪种输入类型的收音机并将此信息发送到后端。

ng-model 指令在这里是非常好的方法,您可以像这样使用它:

html

<label>
  One
  <input type="radio" value="one" ng-model="radio">
</label>
<label>
  Two
  <input type="radio" value="two" ng-model="radio">
</label>

<br><br>{{ radio }}<br>

JS

app.controller('MainCtrl', function($scope) {
  $scope.radio = '';
  $scope.consoleLogRadio = function() {
    console.log($scope.radio);
  }

});

看看plunker example

您需要通过调用该函数将 ng-change 添加到您的输入字段。这是一个快速演示:

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
  $scope.b = [1, 2, 3, 4, 5, 6, 7, 8, 9];
  $scope.getDetails = function(index) {
    console.log("sending data", index,$scope.selected);
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>

<div ng-app="myApp" ng-controller="myCtrl">
  <div ng-repeat="a in b track by $index">
    <input type="radio" ng-model="$parent.selected" ng-value="a" ng-change="getDetails($index)" /> {{a}}
  </div>
</div>