2013-04-18 2 views
0

Я использую шаблон jQuery, который принимает данные JSON для создания таблицы. Этот код работает нормально. Но когда я пытаюсь создать функцию вокруг этого кода и передавать данные JSON, которые я получаю из запроса AJAX, он показывает значения в консоли, но не в таблице. Работа кода с фиктивными данными является:Проблема с шаблоном jQuery с данными JSON

var json = [{"class":12,"marks":"500","marks1":"200","marks2":"300"},{"class":11,"marks":"200","marks1":"300","marks2":"400"}] 

$.template('kList','<tr title="${class}"><td>${marks}</td><td>${marks1}</td><td>${marks2}</td></tr>'); 

for(var i=0; i<json.length; i++){ 
    $.tmpl('kList',json[i]).appendTo("#table1") 
} 

Вот код, где я деформируя верхний код функции и передавая данные JSON в качестве параметра, который показывает значения в консоли, когда я печатаю его с console.log(json), но не заполняя таблицу. Параметр JSON имеет те же данные JSON, что и в приведенном выше коде.

function dataTable(json){ 
    console.log(json); // here json values are appearing in the console 
    $.template('kList','<tr title="${class}"><td>${marks}</td><td>${marks1}</td><td>${marks2}</td></tr>'); 

    for(var i=0; i<json.length; i++){ 
     $.tmpl('kList',json[i]).appendTo("#table1") 
    } 
} 

Пожалуйста, помогите мне, потому что я не знаю, что не так в этом коде. Заранее спасибо.

ответ

1

Ваш параметр json - это строка. Вы должны преобразовать его в объект, используя $.parseJSON (json).

Посмотрите на this для детализации преобразования.

+0

Это дает мне ответ на консоль как [Object, Object], и я уже использовал $ .parseJSON (json), поэтому параметр json - это результат после использования $ .parseJSON (json). есть ли у вас какие-либо другие предложения или вы обнаружите что-то еще не так в этом коде? – Sau

+0

@Sau: Поэтому проверьте, имеет ли значение 'json [0] .class' значение и обратная связь. –

+0

Я попробовал console.log (json [0] .class); и в консоли это покажет мне undefined, но когда я делаю console.log (json [0]); то он отображает все значения. вы можете сделать этот код работы, я буду очень благодарен вам – Sau