如何从AngularJS外部访问函数

时间:2015-03-21 01:21:09

标签: javascript angularjs

我绝对没有使用过AngularJS - 我能够处理别人脚本的所有部分 - 但是我想到了访问类之外的功能的新想法?或者无论它被称为0_o - 我都试着看一下 - 但我只是迷路了。

我正在编写的脚本是这样的:

app.controller("searchFormController", function($scope,$http){


    $scope.getSomeDetails = function(filter){

        alert("you are doing stuff in this function");

    }


})

该函数通常从脚本外部的表单调用 - 如下所示:

<select id="transmissions" name="transmission" ng-model="transmission" ng-change="getSomeDetails(true)">

当选择上面的表单元素时 - 正确调用函数getSomeDetails。

现在我只想用文本链接调用相同的函数。 我试过了:

<span onClick="getSomeDetails(true)">Get Details </span>

不确定我做错了什么 -

我只想调用相同的功能,但使用文字链接?

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

app.controller("searchFormController", function($scope,$http){
    $scope.getSomeDetails = function(filter){
        alert("you are doing stuff in this function");
    };
});

此处searchFormController是您的角度函数。因此,将此函数附加到具有ng-controller属性的html模板。此searchFormController中提到的函数和变量将可用于您将该函数与ng-controller绑定的模板。

您的getSomeDetails功能位于此searchFormController。因此,在html模板中,您希望在此之前调用此函数,您需要将控制器绑定到它的父元素或该元素,以便在需要调用时可以使用函数范围。

您必须在点击链接时调用函数,因此请使用ng-click。并调用该函数。

你的span标签应该是这样的。

<span ng-controller="searchFormController" ng-click="getSomeDetails(true)">Get Details </span>

答案 1 :(得分:0)

<span ng-click="getSomeDetails(true)">Get Details</span>