javascript - AngularJS - 在 ng-click 中使用数据绑定(bind) {{}}

标签 javascript angularjs data-binding single-page-application angularjs-ng-click

有没有办法动态改变ng-click调用的方法?

像这样:

ng-click = "{{functionCalled}}"

然后通过以下方式声明函数:

$scope.functionCalled = "callThisFunction(param)";

最佳答案

来自docs , ngClick 只是计算范围上下文中的表达式。没有什么可以阻止您动态引用函数,但我不确定这是预期的方法。我可能会显式调用函数并根据参数切换行为,而不是像 ng-click='myFunction(myParams)'。尽管如此,这里有一个您要完成的示例。 http://jsfiddle.net/8cvGt/2/

HTML

<div ng-app='foo' ng-controller='ctrl'>
    <div ng-click='this[myVar]()'>{{ bar }}</div>
</div>

JavaScript

var app = angular.module('foo',[]).controller('ctrl',function($scope) {
    $scope.myVar = 'callIt';
    $scope.bar = 'before';
    $scope.callIt = function() {
        $scope.bar = 'after';
    }
});

关于javascript - AngularJS - 在 ng-click 中使用数据绑定(bind) {{}},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23349628/

相关文章:

javascript - Underscore 的类似函数 : _. 包含 vs. _.some 和 _.map vs _.each

javascript - React.js : e. PreventDefault(…) 不是一个函数

javascript - 图像悬停在jquery上消失

javascript - AngularJS 根据选择的选择选项通过文本输入过滤对象数组

data-binding - 自定义 DataGridView 列中多个字段的自定义绑定(bind)(WinForms)

javascript - 如何将 jquery unbind 设置为切换

javascript - 关于 AngularJS 延迟解析位置

javascript - Kendo UI Grid取消不恢复原始数据

c# - DataGridView 列不是从自定义数据源生成的

WPF 属性数据绑定(bind)以否定属性