2016-04-04 10 views
0

Ich habe eine for-Schleife, die beim Erstellen von dynamischen Vorlage für Popup-Alarm in ionischen hilft. Ich möchte die Benutzereingabe mit dem Namen des dynamischen Modells warnen.

Der Name des ng-Modells wird auf diese Weise dynamisch "ng-model="data.serialNo' + i + '" gebildet.

Und ich versuche, um die Eingabe zu alarmieren, indem Sie die folgende Art und Weise unter Verwendung von:

var serialInput = '$scope.data.serialNo' + i; 
alert(serialInput); 

Der obige Code zurückgeben mir die Zeichenfolge „$ scope.data.serialNo1“ statt dem Wert des ng-Modell serialNo1.

Wie soll ich den Modellwert dynamisch erhalten?

var templatePt2 = ""; 
for (i = 1; i <= 2; i++) { 
      templatePt2 += '<div class="item row row-item min-705" ng-model="details.item_id"><div class="col col-centre col-sep col-13 item-text-wrap">' + i + '</div><div class="col col-centre col-sep col-90 item-text-wrap"><input type="text" placeholder="Serial No." ng-model="data.serialNo' + i + '"></div></div>'; 
     } 

     var templatePt1 = '<ion-scroll zooming="true" direction="y" style="width: 100%; height: 160px;"><div style="height: 80%">'; 
     var templatePt3 = '</div></ion-scroll>'; 

     var teamplateForm = templatePt1 + templatePt2 + templatePt3; 

     var myPopup = $ionicPopup.show({ 
      template: teamplateForm, 
      title: 'Item Id: ' + item_id, 
      subTitle: 'Please enter unique serial number', 
      scope: $scope, 
      buttons: [ 
      { text: 'Cancel' }, 
      { 
       text: '<b>Save</b>', 
       type: 'button-positive', 
       onTap: function (e) { 
        for (i = 1; i <= 2; i++) { 
         var serialInput = '$scope.data.serialNo' + i; 
         alert(serialInput); 
        } 

       } 
      } 
     ] 
     }); 
    } 

Antwort

0

Versuchen Sie den folgenden Code.

var serialInput = $scope.data['serialNo'+ i]; 
alert(serialInput);