试图在字符串内部使用FOR循环。 (Js,jQuery)

时间:2015-07-27 03:33:48

标签: javascript jquery html css

我有这段代码:

$.each(data, function(i,v){
  $('#user-grid').append(
    '<a href="my_urls">' +
      '<div>' + v.points + '</div>' +
      '<div>' + v.other + '</div>' +
    '</a>'
  );
});

在用户网格div中,我将字符串附加从数据中获取的值。

v.points和v.other是数字。

到目前为止,一切正常。但我需要的是将for循环嵌入到div中。在我有v.points和v.other的地方我想放两个类似的FOR循环。

for(var i = 0; i < v.points; i++) {
  //here is the html line that should be passed to the div, where v.points are now
  <div>This is the point</div>
}

对于v.other来说差不多。只有另一条应该粘贴的行。

所以基本上我该怎么做?我试图将这个循环粘贴在“append()”内部但是没有成功。我也试图在循环内部创建一个变量并将其传递给append,但只得到一个结果,而不是我需要的所有结果。

1 个答案:

答案 0 :(得分:3)

我不确定这是不是你要找的东西,这段代码打印5“这是你的意思”和3“这是你的另一个”在锚内。

var data = [
    {
        points: 5,
        other: 3
    }
]

function printPoints(vPoints){
    var str = "";
    for(var i=0; i<vPoints; i++) {
        str+="<div>"+"This is your point"+"</div>";
    }
    return str;
}

function printOther(vOther){
    var str = "";
    for(var i=0; i<vOther; i++) {
        str+="<div>"+"This is your other"+"</div>";
    }
    return str;
}

$.each(data, function(i,v){
  $('#user-grid').append(
    '<a href="my_urls">' +
      printPoints(v.points)+
      printOther(v.other)+
    '</a>'
  );
});

在行动here

上查看