Angularjs从控制器

时间:2016-01-13 10:08:30

标签: angularjs ajax ng-repeat

我已经尝试了一切,但我无法得到它。

我需要的是从控制器访问以ng-repeat过滤的数据。

ng-repeat中的数据来自$ http电话。

$http.get('http://localhost:/test/test.php').success(function(data) {

 $scope.registros = data;

 });

这是视图

<div ng-repeat="registro in (filteredregistros = (registros| filter:userSearch | filter:datefilter | filter:greaterThan('ID', greatersearch) |  orderBy:'-ID'))">


             {{registro.ID}}{{registro.date}}

             <div class="rowboxdata ng-animate">

                                        <div class=""><div class="name-business">{{registro.Name}}</div></div>
                                        <div class=""><div class="name-business">{{registro.Phone}}</div></div>
                                        <div class=""><div class="name-business">{{registro.Email}}</div></div>
                                        <div class=""><div class="name-business">{{registro.Name}}</div></div>
                                        <div class=""><div class="name-business">{{registro.City}}</div></div>
                                        <div class=""><div class="name-business">{{registro.Service}}</div></div>
             </div>

</div>

我尝试使用$ scope.filteredregistros从我的控制器过滤访问数据,我在其他帖子中查看,但它对我不起作用。

我正在尝试做的是过滤数据,然后通过ajax将其发送到php。

请帮助谢谢。

EDITED

最后,我通过这个例子找到了我需要的东西;

在视图中:

<input type="button" ng-click="results(filteredregistros)" />

在控制器中:

$scope.results = function (filteredregistros) {
          console.log(filteredregistros);
          // your ajax code
};

如果你想只在视图中得到它,那就像PerHornshøj-Schierbeck所说:

filteredregistros: {{filteredregistros | json}}

感谢PerHornshøj-Schierbeck的帮助

1 个答案:

答案 0 :(得分:1)

尝试添加

filteredregistros: {{filteredregistros | json}}

在某个地方的HTML中。应该清楚它是否包含数据。通过json管道将以json格式显示数据,这对调试内部值很有用。

您执行console.log时可能看不到的原因是,console.log时,您的http请求可能会运行也可能没有运行,并且数据可能不会被过滤爱好。