我希望将 ng-click 的函数调用作为字符串存储在我的模型中。
我无法使用 ng-click="m.func",如果我使用 ng-click="{{m.func}}" 也不起作用。
http://jsfiddle.net/j8wW5/19/ http://jsfiddle.net/j8wW5/19/
看起来 Angular 1.2.0 在 ng-click="{{m.func}}" 的情况下也会引发错误。
我怎样才能把它带到工作中?
<div ng-app="myApp" ng-controller="myCtrl">
<div ng-repeat="m in model"><a href="#" ng-click="{{m.func}}">{{m.caption}}</a></div>
</div>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.model = [
{
caption: 'callme a',
func : 'callme_a()'
},
{
caption: 'callme b',
func : 'callme_b()'
}
]
$scope.callme_a = function() {
alert("called a");
}
$scope.callme_b = function() {
alert("called b");
}
});
你可以这样做:
在你的html中:
<div ng-repeat="m in model"><a href="#" ng-click="call(m)">{{m.caption}}</a></div>
在你的控制器中:
$scope.callme_a = function() {
alert("called a");
}
$scope.callme_b = function() {
alert("called b");
}
$scope.model = [
{
caption: 'callme a',
func : $scope.callme_a
},
{
caption: 'callme b',
func : $scope.callme_b
}
]
$scope.call = function(el) {
el.func();
}
Fiddle http://jsfiddle.net/j8wW5/20/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)