2015-06-25 3 views
3

У меня есть файл data.json содержаниеНаличие данных проблем с загрузкой JSON с помощью JQuery

[ 
{"Images" : "images/car1.jpg", "Model" : "model x", "Name" : "car a1"}, 
{"Images" : "images/car2.jpg", "Model" : "model y", "Name" : "car b2"}, 
{"Images" : "images/car3.jpg", "Model" : "model z", "Name" : "car c3"} 
] 

вот мой JQuery

$.getJSON("data.json", function (data) { 
    var columns = header(data); 


    for (var i = 0; i < data.length; i++) { 
     var row$ = $('<tr/>'); 
       for (var colIndex = 0; colIndex < columns.length; colIndex++) { 


     $.each(data, function() { 
      data[i][columns[0]] = '<img src= "' + this.Images + '" width=240 height=160>'; 
     }); 

      var cellValue = data[i][columns[colIndex]]; 


      if (cellValue == null) { cellValue = ""; }    
      row$.append($('<td/>').html(cellValue)); 
     } 
     $("#jsonTable").append(row$); 
    } 
}); 
function header(list) { 
    var columnSet = []; 
    var headerTr$ = $('<tr/>'); 

    for (var i = 0; i < list.length; i++) { 
     var rowHash = list[i]; 
     for (var key in rowHash) { 
      if ($.inArray(key, columnSet) == -1) { 
       columnSet.push(key); 
       headerTr$.append($('<th/>').html(key)); 
      } 
     } 
    } 
    $("#jsonTable").append(headerTr$); 

    return columnSet; 
} 

Теперь мой HTML таблицу (ID = "jsonTable") Изображения колонка кажется, загружает неправильные данные. Я вижу, что только изображение car1 загружается во все 3 строки столбца «Изображения» ... Я не вижу изображений car2 и car3.

ответ

0

Эта петля $.each не требуется. Удалить $.each

Попробуйте как это без $.each

data[i][columns[0]] = '<img src= "' + data[i].Images+ '" width=240 height=160>'; 

JSFIDDLE

+0

Спасибо Anik для быстро прыгать на это, я не вижу каких-либо изображения загружаются с удалением цикла. не работает. – Mohan

+0

Мой плохой, Да, его работа ... Превосходно !! Большое спасибо – Mohan

+0

Я добавил скрипку :) –

Смежные вопросы