如何定义"选择"用作AngularJS过滤器的select选项

时间:2015-03-11 11:00:14

标签: javascript angularjs

我对Javascript和jQuery很有经验,但对于AngularJS我是一个非常棒的人。

目前我正在从$ http.get填充我的模型,因此在开始时(页面加载后)模型为空。

模型的视图是一个表,我使用<select>元素来过滤此表,如下所示:

<select ng-model="herkunftFilter.herkunft">
  <option value="BTRG">BTRG</option>
  <option value="BTRGMA">BTRGMA</option>
  <option value="DBLATT">DBLATT</option>
  <option value="DBLATTMA">DBLATTMA</option>
</select>

这是控制器。我认为这一切都归结为在这里应用特定的过滤器......但我该怎么办?

    var monitoringViewApp = angular.module('monitoringViewApp', []);
    monitoringViewApp.controller('MonitoringCtrl', function ($scope, $http){
        $http.get('api/getmonitorview').success(function(data) {
            $scope.monitoringTasks = data;
            // set the filter herkunftFilter.herkunft to be 'BTRG'
            // but HOW?
        });
    });

使用此构造,我想预先选择数据模型的第一个herkunft内容作为selected元素的<select>选项,以便过滤器不会从空开始。 / p>

但它是空的......我需要做什么?

<select>用作这些表行的过滤器:

<tr ng-repeat="task in monitoringTasks | filter:herkunftFilter:true">
    <td style="display: none;">{{task.herkunft}}</td>
    <td style="width: 50%">{{task.task}}</td>
    <td>{{task.countEingang}}</td>
    <td>{{task.countInArbeit}}</td>
    <td>{{task.countFehler}}</td>
</tr>

有关如何在我的模型加载后设置selected选项的任何建议,以便过滤器自动应用并且不会保持为空?

1 个答案:

答案 0 :(得分:0)

试试这种方式

 <select  ng-model="selectedherkunftFilter"
 ng-options="monitoringTasks.herkunft for monitoringTask in  monitoringTasks">      
 <option ng-if="!selectedherkunftFilter" value="">Select Value</option>    
 </select>