Как добавить функцию к объекту angular, динамически связанному с событием onclick или click?
Добавление onclick = {{item.function}} или ng-click = {{item.function}} не будет работать
JS
angular
.module('app', [])
.controller('MainController', ['$scope', function($scope) {
$scope.test = function() {
alert(1);
};
$scope.items = {
'item1': {
name: 'Item1',
function: 'test()' // Not calling
}
};
}]);
HTML
<html ng-app="app">
<body ng-controller="MainController">
<ul ng-repeat="item in items">
<li ng-bind="item.name" ng-click="item.function"></li>
</ul>
</body>
</html>
Не работает демо http://codepen.io/anon/pen/jqEKRP
0
DasEarl
1 Мар 2016 в 17:21
1 ответ
Лучший ответ
В контроллере:
...
'item1': {
name: 'Item1',
f: $scope.test
}
...
В шаблоне:
<li ng-bind="item.name" ng-click="item.f()"></li>
http://codepen.io/bparnikel/pen/bpNjoE
2
Boris Parnikel
1 Мар 2016 в 17:26
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript/JS) и его различных диалектах/реализациях (кроме ActionScript). Имейте в виду, что JavaScript — это НЕ то же самое, что Java! Включите все ярлыки, относящиеся к вашему вопросу; например, [node.js], [jQuery], [JSON], [ReactJS], [angular], [ember.js], [vue.js], [typescript], [svelte] и т. д.