使用输入类型=" date"过滤列表AngularJS

时间:2016-04-04 13:01:32

标签: javascript angularjs date filter

我只是尝试使用AngularJS过滤输入类型=日期表中的数据。因此,例如,如果您在输入字段中选择日期30/04/2016,我只想显示具有此日期的记录。在它什么都不做的那一刻,它根本就没有过滤。如果我将输入类型更改为文本,则过滤器可以工作,但我希望用户选择日期而不是键入字符串。

HTML:

<div class="form-group col-md-3">
    <label for="l">Bidding date</label>
    <input type="date" id="b" ng-model="searchBidding.tenderbiddingdateoffersubmission"class="form-control">
</div>
<tbody ng-repeat="result in rowCollection | filter:searchBidding>
    <td >{{result.tenderbiddingdateoffersubmission | date:"dd/MM/yyyy"}}</td>

    <td width="145px"><button type="submit" ng-click="clicked2(result.tenderid)"  class="btn btn-primary">Edit</button>
    <button ng-click="clicked(result.tenderid)" type="submit" class="btn btn-primary">display</button></td>
</tbody>

2 个答案:

答案 0 :(得分:0)

您了解| date:过滤器是输出过滤器,是吗? 过滤逻辑应该在控制器的$scope.searchBidding()函数内,对吧? 所以我想你应该展示searchBidding()实施......

答案 1 :(得分:0)

您可能想要关注searchBidding.tenderbiddingdateoffersubmission变量中的更改。你可以在你的控制器中做到:

$scope.$watch('searchBidding.tenderbiddingdateoffersubmission', function(newValue, oldValue) {
    // do whatever ...
    updateFilteredDate();
});

或许您可以只使用ng-change(取决于您的用例)。