如何使angularjs按钮单击调用传入函数?

如何使angularjs按钮单击调用传入函数?,angularjs,Angularjs,我正在尝试制作一个具有数据驱动UI的应用程序。所以,我试图传入一个函数,当单击按钮时应该调用该函数。当然,第二个按钮可以工作,因为它显式地调用函数。然而,第一个没有。 以下是angular js代码: $scope.clickFunction = "clickedIt()"; $scope.clickedIt = function(){ alert("It worked!");} 以及html: <p>How can I make this button call a pa

我正在尝试制作一个具有数据驱动UI的应用程序。所以,我试图传入一个函数,当单击按钮时应该调用该函数。当然,第二个按钮可以工作,因为它显式地调用函数。然而,第一个没有。 以下是angular js代码:

$scope.clickFunction = "clickedIt()";
$scope.clickedIt = function(){
    alert("It worked!");}
以及html:

<p>How can I make this button call a passed-in function?</p>
<button ng-click="{{clickFunction}}">Click Me</button>
<p>I'd like it to evaluate to this, which works.</p>
<button ng-click="clickedIt()">Click Me</button>
如何使此按钮调用成为传入函数

点击我 我想让它评估一下,这是有效的

点击我 这是一个我正在努力实现的代码。

您需要在控制器中定义一个函数名,以用作事件处理程序:

$scope.clickFunction = "clickedIt";
然后在模板中使用括号表示法:

<button ng-click="this[clickFunction]()">Click Me</button>
点击我
其思想是,
这个
指向当前的范围对象,这正是您想要的,这就是为什么括号表示法在这里很有用


演示:

我以前从未见过括号符号。再次访问angularjs文档的时间到了。谢谢但是,您在Angular文档中找不到它。您只需要了解角度表达式基本上是作为javascript进行解析和计算的。javascript具有以下功能:您可以使用括号符号访问对象属性: