如何设置网址参数并在表

时间:2015-08-03 09:38:54

标签: angularjs json filter parameters html-table

有人可以纠正我这些代码的工作原理吗?我知道这些不是一个有效的代码。我在如何传递URL参数名称和开始日期方面遇到了麻烦。

我想创建一个搜索按钮,就像键入名称“peter”一样,然后再单击它。它将显示所有名称“peter”,然后URL就像。与开始日期相同,如果您键入2015-01-01,网址就像

    <!DOCTYPE html>
<html ng-app="myTable">
    <head>
        <title>project  43</title>
        <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-rc.0/angular.min.js"></script>
        <script type="text/javascript">
            var myTable = angular.module('myTable', []);
            myTable.controller('tableCtrl', function ($scope, $http) {
                $http.get("", {headers: {Authorization: 'vuNYhXbpKfH7dxkL40aCQ1o2JDEiVrRdsds'}})
                        .success(function (response) {
                            debugger
                            $scope.members = response.events;
                            $scope.totals = response.paging;
                        });
            });
            //url
            http://staging.api.sample.com/events.json?name=peter&start_date_from=2015-01-01
                    $location.search();
            Result:
            {
                name : 'peter',
                start_date_from:'2015-01-01'
            }
        </script>
    </head>
    <body ng-controller="tableCtrl">
        <table id="filtertable"border="5">
            <tr>
                <th>Event</th>
                <th>Account Shop</th>
                <th>Place</th>
                <th>Activity</th>
            </tr>
            <tr ng-repeat="member in members">
                <td>
                    {{member.Event.name}}<br>  <!--names-->
                    {{member.Event.id}}<br>
                    {{member.Event.date_start}}<br>   
                    {{member.Event.date_end}}<br>     
                <td>
                    {{member.AccountShop.id}}<br>
                    {{member.AccountShop.name}}<br>
                    {{member.AccountShop.short_code}}<br>
                </td>
                <td>
                    <div ng-repeat="Place in member.Place">
                        {{Place.id}}<br>
                        {{Place.name}}<br>
                        {{Place.lk_country_code}}<br>
                    </div>
                </td>
                <td>
                    <div ng-repeat="Activity in member.Activity">
                        {{Activity.id}}<br>
                        {{Activity.short_description}}
                    </div>
                </td>
        </table>
    </body>
</html>

1 个答案:

答案 0 :(得分:0)

您可以使用$location获取网址参数,例如$location.search().name;

var myTable = angular.module('myTable', []);
myTable.controller('tableCtrl', function ($scope, $http, $location) {
    // HERE IS WHAT YOU ASKED FOR
    var name = $location.search().name;

    $http.get("http://staging.api.sample.com/events.json", {
        headers: {
            Authorization: 'vuNYhXbpKfH7dxkL40aCQ1o2JDEiVrRdsds'
        }
    })
        .success(function (response) {
        debugger
        $scope.members = response.events;
        $scope.totals = response.paging;
    });
});