Ich habe 25 Elemente aus JSON String. Jedes Element wird mit einem Schlüssel namens "InRowPlcement" geliefert und der Wert wird als "0" oder "1" oder "2" usw. zugewiesen.Erstellen Eltern-Div innerhalb ng-Wiederholung
{"ItemID":"516","ItemName":"Newzeland Lake Tysonno","InRowPlcement":0},
{"ItemID":"514","ItemName":"Newzeland Lake Tysonno","InRowPlcement":0},
{"ItemID":"546","ItemName":"Underworld Lives","InRowPlcement":0},
{"ItemID":"527","ItemName":"In a holiday beach","InRowPlcement":1},
{"ItemID":"542","ItemName":"Underworld Lives","InRowPlcement":1},
{"ItemID":"525","ItemName":"Lake somewhere","InRowPlcement":1},
{"ItemID":"540","ItemName":"Coral Structure at Andaman","InRowPlcement":1},
{"ItemID":"569","ItemName":"Ice Rock, Ireland","InRowPlcement":2}
Die Absicht ist, platziert, um die "0" "InRowPlacement" Elemente in der ersten Reihe "1" in der zweiten Reihe, "2" in der dritten Reihe und so weiter. Die Anzahl der Elemente kann in jeder Zeile variieren. Es kann von 1 bis 5 in einer einzigen Reihe möglich sein.
begann ich die ng-repeat
<div class="ROW" ng-repeat="item in items">
<div class="COLUMN">{{item.ItemName}}<div>
</div>
Ich brauche das Ergebnis wie
für Ihre Hilfe<div class="ROW">
<div class="COLUMN">Newzeland Lake Tysonno<div>
<div class="COLUMN">Newzeland Lake Tysonno<div>
<div class="COLUMN">Underworld Lives<div>
</div>
<div class="ROW">
<div class="COLUMN">In a holiday beach<div>
<div class="COLUMN">Underworld Lives<div>
<div class="COLUMN">Lake somewhere<div>
<div class="COLUMN">Coral Structure at Andaman<div>
</div>
Vielen Dank im Voraus sein sollte.
LÖSUNG UPDATE:
Auf der Grundlage der Logik von @vp_arth vorgesehen, hier ist der eigentliche Code, der für mich arbeitet
var view_rows = {};
angular.forEach(response.data, function(InRowPlcement,index){
if (!view_rows[response.data[index].InRowPlcement]) view_rows[response.data[index].InRowPlcement] = [];
view_rows[response.data[index].InRowPlcement].push(response.data[index]);
});
groups = view_rows;
Warum gerade nicht Datenstruktur für Ansichtsschicht ändern? Iterate durch und baue, was du in deinem Controller brauchst. –
@vp_arth, Können Sie mir bitte einige Details geben, ich wollte nur "
inserting parts of DOM like this too smells. Just think angular. There is a data and there is directive ('ng-repeat') to represent this data. You can write your own directive with custom behavior. You shouldn't manipulate with raw HTML parts (like '