Не получить значения радиокнопки с помощью angularJS - PullRequest
1 голос
/ 12 апреля 2019

Я хочу установить значения проверяемого radiobutton в переменной. Но я не могу получить это. Ниже приведен код, который я пытался

master.controller('FiberLead_Filter', function($scope, $http, NEIQC_Service, Scopes, $rootScope) {
      var rdSelectMP = $scope.MPSelect; // here I am getting undefined
    }
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.25/angular.min.js"></script>
<div class="rightFilter" ng-controller="FiberLead_Filter as Filter" id="FiberLead_Filter">
  <div class="pdfDownload customeRadioWrap">
    <div class="customeRadio">
      <input type="radio" id="btnCurrentMP" name="radio-group" ng-model="MPSelect" ng-value="Current">
      <label for="btnCurrentMP">Current MP</label>
    </div>
    <div class="customeRadio">
      <input type="radio" id="btnAllMP" name="radio-group" ng-model="MPSelect" ng-value="All">
      <label for="btnAllMP">All MP</label>
    </div>
    <button class="btn btn-default customBtn" ng-click="DownloadExcelReport()"><i class="fa fa-file-pdf-o" aria-hidden="true"></i> Download</button>
  </div>
</div>

Дайте мне знать, что не так с моим кодом, когда я его получаю UNDEFINED

1 Ответ

2 голосов
/ 12 апреля 2019

Это потому, что ng-value ищет переменную "Все" $scope, но, скорее всего, ее нет. Если ожидаемое значение является строкой, либо используйте 'All', либо вместо этого просто используйте value.

Рабочая скрипка ниже, нажмите кнопку «скачать», чтобы записать текущее значение (сначала выберите значение).

angular.module('app', []);

angular.module('app').controller('FiberLead_Filter', function($scope, $http, $rootScope) {
      $scope.DownloadExcelReport = function(){
        console.log($scope.MPSelect);
      }
    }
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.25/angular.min.js"></script>
<div ng-app="app">
  <div class="rightFilter" ng-controller="FiberLead_Filter as Filter" id="FiberLead_Filter">
    <div class="pdfDownload customeRadioWrap">
      <div class="customeRadio">
        <input type="radio" id="btnCurrentMP" name="radio-group" ng-model="MPSelect" value="Current">
        <label for="btnCurrentMP">Current MP</label>
      </div>
      <div class="customeRadio">
        <input type="radio" id="btnAllMP" name="radio-group" ng-model="MPSelect" value="All">
        <label for="btnAllMP">All MP</label>
      </div>
      <button class="btn btn-default customBtn" ng-click="DownloadExcelReport()"><i class="fa fa-file-pdf-o" aria-hidden="true"></i> Download</button>
    </div>
  </div>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...