2016-06-16 17 views
2

so habe ich diese FelderWie übermittele ich Daten aus einem Feld?

vm.prepFields = [ 

{ 
    key: 'shirt', 
    type: 'select', 
    templateOptions: { 
     label: 'Choose Shirt Size', 
     placeholder: 'Select option', 
     options: shirt_list 
    } 
}, 

{ 
       key: 'shortsq', 
       type: 'checkbox', 

       templateOptions: { 
       label: 'Shorts', 

       } 
       }, 


       { 
       key: 'shorts', 
       type: 'select', 
       templateOptions: { 
       label: 'Choose Shorts Size', 
       options: shorts_list 
       }, expressionProperties: { 
       hide: '!model.shortsq' 
       } 
       } 
]; 

}

shortsq eine Checkbox ist, die bei Anklicken die Shorts wählen Sie die Option zeigt .... wie kann ich einen Wert übergeben, wenn Shorts aktiviert ist?

z.B. Nehmen wir an, der Preis eines T-Shirts beträgt $ 10, ich möchte, dass der Preis um $ 5 steigt, wenn Shorts überprüft werden. Wie kann ich das erreichen?

+1

kann man ein Setup plunkr Ich glaube, das ist ziemlich einfach?. –

Antwort

0

Dies kann leicht durch die Verwendung onChange in der templateOptions erfolgen:

  { 
       key: 'shortsq', 
       type: 'checkbox', 

       templateOptions: { 
        label: 'Shorts', 
        onChange: function($viewValue, $modelValue, $scope) { 
         if($scope.model.shortsq) $scope.model.shirtPrice += 5; //increase price by $5 when checked 
         else $scope.model.shirtPrice -= 5; //reduce price by $5 when not checked 
        } 
       } 
      }, 
Verwandte Themen