jquery div从数组中替换

时间:2012-07-15 22:37:49

标签: javascript jquery

我有一个二维数组,我从一个调用中得到JSON。

我也有一个3乘3的div。

如下:

<div id="type0">
    <div id="image00"></div>
    <div id="image01"></div>
    <div id="image02"></div>
</div><br />

<div id="type1">
    <div id="image10"></div>
    <div id="image11"></div>
    <div id="image12"></div>
</div><br />

<div id="type2">
    <div id="image20"></div>
    <div id="image21"></div>
    <div id="image22"></div>
</div><br />

我有以下循环来迭代数据。

$.each(res, function (i, tickets) {
     $.each(tickets, function (j, ticket) {

         console.log('i:' + i);
         console.log('j:' + j); 



     });
 });

每次调用此脚本时,如何替换上面div的内容?

基本上,我想填补3乘3的div。

所以,对于内循环,我想我需要类似的东西:

$("#type1").$("#image1").html(image here);

这样做的正确方法是什么?

i和j给出你,0,1,2和0,1,2。

还是有更好的方法吗?

2 个答案:

答案 0 :(得分:3)

您可以尝试eq()start with attribute选择器:

$.each(res, function (i, tickets) {
     $.each(tickets, function (j, ticket) {
         $('div[id^=img]').eq(j).text(ticket)
     });
 });

$.each(res, function (i, tickets) {
     var ind = i;
     $.each(tickets, function (j, ticket) {
         $('#image'+ind+j).text(ticket)
     });
 });

答案 1 :(得分:1)

使用ids作为选择器,因为它们是唯一的

$.each(res, function (i, tickets) {
     $.each(tickets, function (j, ticket) {
         $(('#image'+i)+j).html(image here)
     });
 });