基于字符串长度的角度过滤

时间:2014-08-16 04:28:07

标签: json angularjs

我有一个角度视图,循环遍历JSON数据并返回表单中的所有值;但是,提交的每个表单在不同的地方都有空值。我想为每个部分返回数据,但只有当字符串长度大于0时才返回数据。是否有角度过滤器可以执行此操作?

以下是我的观看数据:

<div data-ng-repeat="n in [] | range:100">
<div class="calendar" ng-repeat="cal in calendar[n].year | filterKey:month">  
<div class="events">
 <div ng-repeat="(val, key) in cal">
  <a href="/events/{{key.day}}">
  <article class="eventslist">
   <div class="numberedDate">
   <h3>{{key.day}}</h3>
    </div>
    <div class="calInfo">
     <h5>{{key.title}}</h5>
     <p>{{key.summary}}&nbsp;<a>more</p>
     </div>
     </article>
     </a>
</div>

以下是提交的JSON数据的示例:

{

_id: "53ee9f0fc6aed109c6d33cfc"
  __v: 0
  -year: {
    December: [ ]
    November: [ ]
    October: [ ]
    September: [ ]
    August: [ ]
    July: [ ]
    -June: [
     -{
       day: "21"
       title: "ok"
       summary: "ok"
       description: "ok"
       _id: "53ee9f0fc6aed109c6d33cfd"
       }
         ]
    May: [ ]
    April: [ ]
    March: [ ]
    February: [ ]
    January: [ ]
    }
}

对于6月这个问题很有效,但在其他11个月里,不返回任何数据会很棒。

2 个答案:

答案 0 :(得分:0)

您是否尝试输入循环不变量以使其在每次传递中循环遍历N个元素?

<script>
var objectJson = /*the object that you get in JSON*/;
var structID = objectJson._id;

$_.each( objectJson, function( i, j) {
    //check for each v = 0 for every structID given the JSON ID

    if($(this).objectJson.structID.v = 0) {
        //do what you want with it
    }
});
<script>

答案 1 :(得分:0)

尝试使用数据-ng-如果您的ng-repeat div中可能存在条件。可能它会起作用。