Я должен отобразить набор записей в HTML-таблице. Я использую PHP и JQuery для этого.
Это мой набор результатов, который получается с помощью json_encode()
Это вывод beta.php
[{"StuId":"1","fName":"Saman","lName":"Kumara","age":"14","grade":"A"},{"StuId":"2","fName":"Marry","lName":"Vass","age":"12","grade":"B"},{"StuId":"3","fName":"Navjoth","lName":"Bogal","age":"32","grade":"A"},{"StuId":"4","fName":"Jassu","lName":"Singh","age":"22","grade":"E"}]
Я использую страницу print.html
, как указано ниже, чтобы распечатать результаты выше в таблице
$(document).ready(function(){
$getJSON('beta.php' , function(data){
$.each(data, function(){
$.each(this , function(key , value){
$("<table>").appendTo("document.body");
$("<table>").html("<tr><td>" + value.StuId + "</td><td>" + value.fName + "</td><td>" + value.lName + "</td><td>" + value.age + "</td><td>" + value.grade + "</td></tr>");
});
});
});
});
это дает ошибку, говорящую $getJSON() is not defined
Буду признателен, если кто-нибудь сможет мне помочь.
Хорошо, когда я изменил код следующим образом, я могу напечатать первую запись в наборе записей.
Но я не понимаю, почему не работает $ .each () ????
$("table").html("<tr><td>" + data[0].StuId + "</td><td>" + data[0].fName + "</td><td>" + data[0].lName + "</td><td>" + data[0].age + "</td><td>" + data[0].grade + "</td></tr>");
Я тоже пытался использовать цикл for, но тогда он печатает только последнюю строку
$.getJSON('beta.php' , function(data){
$.each(data, function(key, value){
for(var x=0; x < data.length; x++){
$("table").html("<tr><td>" + data[x].StuId + "</td><td>" + data[x].fName + "</td><td>" + data[x].lName + "</td><td>" + data[x].age + "</td><td>" + data[x].grade + "</td></tr>");
$("table").appendTo("document.body");
}
});
})
Может кто-нибудь высказать свое мнение по этому поводу:)