Ng点击不起作用

时间:2015-10-01 12:46:24

标签: javascript angularjs angularjs-ng-click

我有一个控制器,我在其中启动一个http请求,一旦请求完成,我调用另一个视图,然后使用ng-click。但我的ng-click无效。

这是我的代码。

app.controller('listuser', function ($scope,$http,$log,$window) {
        $scope.userdetail = {};
        return $http({
                 method: 'POST',
                 url: 'apisource.php',

            })
            .then(function (results) {

                $scope.data=results.data;
                return $scope.data;
            });

         $scope.douserdetail = function(user) {
             alert('test');
        };

    });
<tr data-ng-repeat="x in data">
    <td>
        <input type="hidden"  name="id" ng-model="userdetail.id" value="{{x.id}}" />
        <a href='' ng-click="douserdetail(userdetail)" class="user-link">{{x.First_Name}}{{x.Last_time}}</a>
        <span class="user-subhead">{{x.Phd_University}}</span>
    </td>
</tr>

2 个答案:

答案 0 :(得分:2)

您的代码在第3行的控制器中有一个return,因此没有执行return语句之外的代码,请尝试:

app.controller('listuser', function ($scope,$http,$log,$window) {
    $scope.userdetail = {};
    $scope.data = [];

    var init = function () {
        $http({
            method: 'POST',
            url: 'apisource.php',

        })
            .then(function (results) {
                $scope.data=results.data;
            });
    };
    init();

    $scope.douserdetail = function(user) {
        alert('test');
    };

});

答案 1 :(得分:0)

您应该只使用div或按钮类型元素,而不是'a'标记。 将标签更改为div或其他内容,它将起作用

<div ng-click="douserdetail(userdetail)" class="user-link">{{x.First_Name}}{{x.Last_time}}</div>