javascript - add bootstrap rows during ng-repeat -
i have situation have list of data displayed in individual panels, using bootstrap's grid system, i'd take advantage of wide screen , display several panels horizontally, on narrow screens have them stack. i'm laying things out on server side ejs this, columns being passed in query parameter, typically set 2 or 3, each colclass either col-sm-6 or col-sm-4.
<% var colwidth = 12/columns; var colclass = "col-sm-" + colwidth; %> <% for(var i=0; i<contestdata.classdata.length; i++) {%> <% if ((classcount % columns) == 0) { %> <div class="row"> <% } %> <div class="<%= colclass %>"> <div class="panel panel-primary"> <div class="panel-heading"> <h3 class="panel-title"> <%= contestdata.classdata[i].name %> </h3> </div> <div>...</div> </div> </div> <% classcount++ %> <% if ((classcount % columns) == 0) { %> </div> <% } %> <% } %>
this works, doing level of layout on server side offends me, i'd rather angular can't figure out how wrap appropriate number of panels in div class=row while doing ng-repeat or ng-repeat-start="classdata in contestdata.classdata"
thanks!
here simple solution html, 3 rows
<div class="row" > <div class="col-md-4" ng-repeat-start="item in data"> i'm row </div> <div class="clearfix" ng-if="($index+1)%3==0"></div> <div ng-repeat-end=""></div> </div>
Comments
Post a Comment