对于模型,我需要一个像
这样的简单机制ng-click="alert('Clicked')"
但上面的代码不起作用,有人可以帮帮我吗?我不想触摸控制器..
答案 0 :(得分:3)
请参阅上一个答案,ng-click =“alert('Hello World!')”仅当$ scope指向window.alert即
时才会起作用$scope.alert = window.alert;
但即使它会产生eval问题,所以正确的语法必须是:
<强> HTML 强>
<div ng-click = "alert('Hello World!')">Click me</div>
<强>控制器强>
$scope.alert = function(arg){
alert(arg);
}
答案 1 :(得分:2)
据我所知,ng-click
仅适用于$scope
。因此,您只能调用$scope
本身定义的函数。要使用提醒,您可以尝试访问window
元素,只需使用window.alert('Clicked')
。
EIDT:感谢易卜拉欣。我忘了。如果你不能定义,你就不应该使用window.alert
:
$scope.alert = window.alert;
在这种情况下,在alert('Clicked')
指令中使用ng-clicked
应该有效。但最后,这种方法无法解决您不接触控制器的问题。
答案 2 :(得分:2)
您可以使用
onclick="alert('Clicked')"
出于调试目的
答案 3 :(得分:0)
正如Neeraj所说,接受的答案不起作用。将这样的内容添加到控制器中以避免Illegal Invocation
错误:
$scope.alert = alert.bind(window);