如何使用 angularjs 和 ionic1 从 select 获取信息?

How can I get information from a select with angularjs and ionic1?

如何使用 angularjs 和 ionic1 从 select 获取信息?

我正在尝试从 JSON 中获取信息并放入 "select",直到我必须完成该部分。但是当我 select 来自此 "select" 的信息并尝试获取 "select" 中的 ID 和名称时,它没有显示。

我的 html -> igreja.html

<ion-view view-title="Igrejas">
    <ion-nav-buttons side="left">
            <button class="button button-icon button-clear ion-navicon" menu-toggle="left">
            </button>
    </ion-nav-buttons>
    <ion-content>
     <form ng-submit="realizarLogin()">
      <div class="list list-inset">
        <ion-item class="item-input item-select--full">
          <div class="input-label">
            Selecione a sua igreja
          </div>
          <select ng-model="login" ng-options="y.Nome for (x,y) in igrejaEscolhida">
          </select>
          <h1> test: {{login.Nome}}</h1>
          <h1> id: {{login.Id}} </h1>
        </ion-item> 

        <button class="button button-block button-positive" type="submit">Entrar</button>
      </div>
    </form>
    </ion-content>
</ion-view>

我的routes.js

.state('app.igrejas', {
    url: '/igrejas',
    views: {
      'menuContent': {
        templateUrl: 'templates/igrejas.html',
        controller: 'igrejasController'
      }
    }
  })

我的controller.js

.controller('igrejasController', function($scope, $ionicModal, $timeout, $stateParams, $ionicPopup, $state, $rootScope, $http, $sce) {



  $http.get(linkIgrejas).then(function(data){

    $scope.igrejaEscolhida = data.data;

    console.log($scope.igrejaEscolhida);

    $scope.igrejaEscolhida.forEach(function(element, index, array){
      element.Id = element.Id;
      element.Nome = element.Nome;
      console.log(element.Id);
      console.log(element.Nome);
    })

  })

  $rootScope.login = {};

  $scope.realizarLogin = function() {


    var dadosDoLogin = {
      params : {
        nome: $rootScope.login.nome
      }
    }

    $scope.selectUpdated = function(optionSelected) {

      console.log('Updated');
      console.log(optionSelected);

    };

    console.log($scope.selectUpdated);

    $scope.loginF.Nome;
    $scope.loginF.Id;

    console.log($scope.loginF.Nome);
    console.log($scope.loginF.Id);


     $rootScope.teste = $rootScope.login.nome;
     $scope.nomeIgreja = $rootScope.login.nome;
     $scope.idIgreja = $rootScope.login.Id;

     $rootScope.login.Id;

      console.log($scope.nomeIgreja);
      console.log($scope.idIgreja);



  };
})

有人可以帮助我或告诉我我在 "select" 中做错了什么吗?

我更改了 Igrejas.html 和 controller.js

Igrejas.html

<ion-view view-title="Igrejas">
    <ion-nav-buttons side="left">
            <button class="button button-icon button-clear ion-navicon" menu-toggle="left">
            </button>
    </ion-nav-buttons>
    <ion-content>
     <form ng-submit="realizarLogin()">
      <div class="list list-inset">
        <ion-item class="item-input item-select--full">
          <div class="input-label">
            Selecione a sua igreja
          </div>
          <select ng-model="login.nome">
                  <option ng-repeat="igrejaEscolhidas in igrejaEscolhida">
                   {{ igrejaEscolhidas.Nome }}
                   {{ igrejaEscolhidas.Id }}
                  </option>
          </select>
        </ion-item> 

        <button class="button button-block button-positive" type="submit">Entrar</button>
      </div>
    </form>
    </ion-content>
</ion-view>

我的controller.js

.controller('igrejasController', function($scope, $ionicModal, $timeout, $stateParams, $ionicPopup, $state, $rootScope, $http, $sce) {



  $http.get(linkIgrejas).then(function(data){

    $scope.igrejaEscolhida = data.data;

    console.log($scope.igrejaEscolhida);

    $scope.igrejaEscolhida.forEach(function(element, index, array){
      element.Id = element.Id;
      element.Nome = element.Nome;
      console.log(element.Id);
      console.log(element.Nome);
    })

  })

  $rootScope.login = {};

  $scope.realizarLogin = function() {


     $rootScope.teste = $rootScope.login.nome;

    console.log($rootScope.teste);




  };
})

当我用这种方式测试时,我设法得到了id和name,但是他们在这个打印中像这样在一起,我需要把它们分开,他们如何在angularjs中分开?

我的打印:

http://prntscr.com/fhg4py

或者有人知道我如何获得 id 和单独的名称,因为我有这个 id 和那个名称将来自同一个 select?我把它们放在一起了。

尝试用值本身来表示id

<option ng-repeat="igrejaEscolhidas in igrejaEscolhida" value="{{ igrejaEscolhidas.Id }}">
                   {{ igrejaEscolhidas.Nome  }}
                  </option>

然后带有 select 的 ng-model 将从所选选项的值中获取 ID。