Jquery Angular JS-数组中数字的重复图像标记
我正在修改我的问题,因为我以前无法得到正确的解决方案 我有一个数组乘积_page=[7,8,6,9,5,7,8,9,8,7] 每次根据json值重复下表的ng时,图像标记的注释为:请注意,此图像标记需要重复,第一次ng重复需要重复7次,第二次ng重复需要重复8次,第三次ng重复需要重复6次,依此类推Jquery Angular JS-数组中数字的重复图像标记,jquery,json,angularjs,angularjs-ng-repeat,ng-repeat,Jquery,Json,Angularjs,Angularjs Ng Repeat,Ng Repeat,我正在修改我的问题,因为我以前无法得到正确的解决方案 我有一个数组乘积_page=[7,8,6,9,5,7,8,9,8,7] 每次根据json值重复下表的ng时,图像标记的注释为:请注意,此图像标记需要重复,第一次ng重复需要重复7次,第二次ng重复需要重复8次,第三次ng重复需要重复6次,依此类推 <table class="table table-bordered"> <tbody> <tr ng-repeat="user in user
<table class="table table-bordered">
<tbody>
<tr ng-repeat="user in users[0].tvseries | filter: searchText | filter: genre.config | orderBy:predicate">
<td>
<img ng-src="{{user.thumbnail}}" alt="" />
</td>
<td>
<div>{{user.tv_show_name}}</div>
<div>{{user.brief_description}}</div>
<div>Rating:
<!--Please note this image tag needs to be repeated-->
<img ng-repeat="rate in getNumber(products_page[$index]) track by $index" src="img/star.png" width="15" height="15" />
<!--Please note this image tag needs to be repeated-->
{{user.rating}}</div>
</td>
<td>
<div>SHOW TIME:{{user.show_time}}</div>
<div>GENRE:{{user.genre}}</div>
<div>SEASON:{{user.current_season}}</div>
<div>EPISODE:{{user.current_episode}}</div>
</td>
</tr>
</tbody>
</table>
有什么办法可以做到这一点吗?如果我有你的问题,你可以在child ng repeat中使用$index of parent 在html中:
<ul>
<li ng-repeat="i in getNumber(myNumber)">
<ul>
<li ng-repeat="j in getNumber($index+1)"> <span>{{$index+1}}</span>
</li>
</ul>
</li>
</ul>
如果我没弄错的话,你是在尝试重复一定次数的星星图像来显示等级,比如10颗星中有7颗星 如果是这样的话: ng repeatonly适用于数组,这意味着您不能直接在数字7上迭代以将图像重复7次7,这只是products_页面中某个条目的示例 必须将每个条目转换为具有正确长度的数组,一种方法是使用筛选器:
app.filter('range', function () {
return function range (count) {
var i = 0,
temp = [];
count = Number(count) || 0;
for (i; i<count; i++) {
temp.push(i);
}
return temp;
};
});
并在标记中这样使用它
更好的方法是,将此逻辑抽象为除筛选器之外的可重用指令,或者将筛选器逻辑添加到指令的链接函数中,只要最适合您:
app.directive('rating', function () {
return {
restrict: 'AE',
scope: {
value : '='
},
template: '<img src="img/star.png" width="15" height="15" ng-repeat="rate in (value | range)" />'
};
});
像这样使用它
请参见此处的工作、修剪示例:它正在工作。。只要用一个真实的数字来更改myNumber:嗨,Lorenzo,我希望这个数字来自我的json。上面提到的变量$scope.products_页面包含来自我的json的评级数组。但是我的图像标签似乎没有被重复。那么getNumber函数中的num参数是什么。。从来没用过…嗨,洛伦佐,对不起,那是我的错。它应该是getNumberuser.rating,我说过,{{user.rating}}有图像标签需要重复的确切次数。我还修改了控制器以返回一个{{user.rating}数组。但是我仍然没有得到重复的图像:我发布的小提琴只是我在浏览解决方案时得到的一个参考。如果{user.rating}有项目数,那么只需在user.ratingHi Abraham中执行ng repeat=rate,我不会尝试嵌套ng repeat。我只想重复n次图像标签。n只注意{{user.rating}