Im currently working on a code to achieve something like ng-repeat in angular. Basically a for-loop in html.
the code takes every element with the class "loop" and processes it with the information given through the "info" attribute. Here is the code :
HTML
<div class="loop" data-info="i in 1 to 10">
-i-
</div>
Javascript
$(".loop").each(function(i){
var loop_info=$(this).attr("data-info");
var fin=loop_info.match(/(.*) in (d+) to (d+)/);
var variable=fin[1],
initial=fin[2],
final=fin[3];
var htm=$(this).html(),printed="";
for(j=initial;j<=final;j++){
var temp=htm;
var r=new RegExp("-("+variable+")-","g")
temp=temp.replace(r,j);
printed+=temp;
}
$(this).html(printed);
});
Now i have also included the feature to replace the - variable - with the numbers.
Everything worked perfectly but when the loops are nested i.e
<div class="loop" data-info="i in 1 to 10">
<div class="loop" data-info="j in 1 to 10">
-j-
</div>
</div>
it doesnt work on the nested loop ,i.e -j- doesnt get replaced with the numbers.
I dont know why this is happening ,any help is appreciated.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…