我需要在使用AngularJS点击时选择一个HTML元素

时间:2015-06-02 10:15:23

标签: javascript html angularjs

我有一个HTML文件,左侧是用户列表,右侧是一个用户的属性。当我点击某个用户时,我可以看到他的属性(姓名,电子邮件等),但是如何选择用户名?我的代码是

.state('user', {
        url: '/user',
        templateUrl: "static/partials/users.html",
        controller: ['$scope', '$http',
            function( $scope,   $http) {

                $scope.users = [];
                $http.get('/api/v1/user/').success(function(data) {
                    $scope.users = data.objects;
                }).error(function(data, status, headers, config) {
                        if(status=401){
                            window.location = '/admin'
                        }
                })
            }
        ]
    })

    .state('user.view', {
        url: '/:userId',
        views: {
            '': {
                templateUrl: "static/partials/users.view.html",
                controller: ['$scope', '$http', '$stateParams',
                    function( $scope,   $http,   $stateParams) {



                        $scope.selectedUser = {};
                        $http.get('/api/v1/user/'+$stateParams.userId+'/').success(function(data) {
                            $scope.selectedUser = data;
                        }).error(function(data, status, headers, config) {
                        if(status=401){
                            window.location = '/admin'
                        }
                })
                    }
                ]
            }
        }
    })

HTML文件是

<table class="table">
    <tr ng-repeat="(key, value) in selectedUser">
        <td>{{ key }}</td>
        <td>{{ value }}</td>
    </tr>

更新 感谢TheFox我这样做了:

<div class="col-lg-4">

<ul class="nav nav-list">
    <li ng-repeat="user in users" ng-click="myStyle={color:'red'}">
        <a ui-sref="user.view({userId:user.id})" ng-style="myStyle">{{ user.username }}</a>
    </li>
</ul>

而且更像是额外的css文件

1 个答案:

答案 0 :(得分:0)

尝试使用ng-click添加布尔值或ng-class来动态设置它。然后你可以添加css使它看起来被选中。