我试图从我的angularjs控制器到我的html视图,设置要触发的控制器上的函数名称。
我的控制器上有这个:
$scope.functionName = 'change();';
在我的html视图中我有这个:
<input type="text" ng-blur="{{functionName}}" />
但它不起作用。我有一个表达式错误,这里是错误文本:
Error: [$parse:syntax]
答案 0 :(得分:0)
通常,您不希望将函数名称传递给视图,而只是直接在控制器上调用该函数。
在您的控制器中:
$scope.handleBlur = function () {
// do something here
};
在你看来:
<input type="text" ng-blur="handleBlur()" />
如果你确实需要动态更新blur上发生的事情,你可以让handleBlur函数包含其中的逻辑,或者你可以用你的控制器中的新实现替换handleBlur函数,如下所示:
function doSomething() { ... }
function doSomethingElse() { ... }
$scope.handleBlur = doSomething;
$scope.updateHandleBlur = function () {
$scope.handleBlur = doSomethingElse;
};