Как я могу отфильтровать дату окончания, используя Angluarjs?

0

Привет всем Я хочу фильтровать такие элементы, как (Дата начала и окончания), которая основана на Due_date используя функциональность daterange в приложении meanjs...... My Plunk

  • Пожалуйста, посмотрите на мой плункер.

  • Я показываю Due_date, поэтому это поле, которое я хочу использовать для фильтрации.

  • Я использовал некоторые функции для добавления invoice_Date и terms, которые дают ответ вроде Due_date. за исключением: - invoice_date: 2016-09-10, условия: 6, ответ я получил Due_date: 16-09-2016

  • поэтому, что я с нетерпением ищу, я хочу отфильтровать Due_date как дату начала и дату окончания: например: - если мы выберем дату начала, например 16-09-2016 а дата окончания - 25-09-2016 в таблице, эти две транзакции нужно отображать или фильтровать... поэтому я использовал фильтр daterange для достижения этого решения,

  • Я могу отлично фильтровать start date, но не могу отфильтровать start date End date, если мы выберем End date она не показывала правильную транзакцию в таблице. Пример: - startdate: - 16-09-2016 тогда, если мы выберем end date такую как 28 -09-2016, ему нужно будет отобразить три транзакции, но в таблице отображаются только две транзакции.... My Plunker

контроллер:

 .filter("myfilter", function() {
   return function(items, from, to) {
     var df = from;
       var dt =to;
         var result = [];   

      for (var i=0; i<items.length; i++){
        var date = new Date(items[i].invoice_date);
          date.setDate(date.getDate() + parseInt(items[i].terms));
           var tf = date;
             if (tf > df && tf < dt)  {
               result.push(items[i]);
            }
        }   
         console.log(items);
        return result;
  };
});

Html:

<input type="date" class="form-control" name="from" ng-model="from">

<input type="date" class="form-control" name="to" ng-model="to">

Фильтр:-

ng-repeat="data in  record | myfilter:from:to"

Это ниже поданной необходимо фильтровать в таблице: -

Срок оплаты:-

<td> {{addDays(data.invoice_date,data.terms) | date:'dd-MM-yyyy'}}</td>
Теги:
meanjs

1 ответ

1
Лучший ответ

Вы должны попробовать Moment для операций datetime,

var date = moment(items[i].invoice_date).add(items[i].terms,'d');
if(date.isAfter(from) && date.isBefore(to)){
  .....
}
  • 0
    @ Джерри Чен Спасибо за ваш ценный ответ, не могли бы вы обновить plunker, чтобы узнать решение ... bcoz мы опробовали ваш ответ в plunker, он не работает, поэтому, пожалуйста, обновите plunker ...... спасибо
  • 0
    @ R.ManiSelvam plnkr.co/edit/pwlZnMFG03TzOjrDzSfB?p=preview проверить конец месяца, это октябрь, а не сентябрь.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню