Is it possible to bind an object elements according to the value of a variable in angularjs -
suppose have object this:
var myobj = { item1:{}, item2:{}, item3:{}, ... }; i have variable (e.g:itemholder) values item1, item2 , on.
i want bind object elements in view. there way bind according value of variable? solution below:
{{myobj.[itemholder]}}
assuming both variables declared on scope, yes, can using javascript bracket notation so:
$scope.myobj = { item1: {}, item2: {}, item3: {}, ... }; $scope.itemholder = 'item1'; then can interpolate value below:
{{ myobj[itemholder] }} // {} working snippet:
angular.module('myapp', []) .controller('appcontroller', function($scope) { $scope.myobj = { item1: { a: 1 }, item2: { b: 2 }, item3: { c: 3 } }; $scope.itemholder = 'item1'; }); <div ng-app="myapp" ng-controller="appcontroller"> type prop name<br> <input type="text" ng-model="itemholder"><br> {{ myobj[itemholder] }} </div> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.0/angular.js"></script>
Comments
Post a Comment